【发布时间】:2011-11-19 03:03:59
【问题描述】:
我知道一点 PHP 和 HTML/CSS,并且我制作了一个简单的测验程序,允许用户创建和执行存储在 MySQL 数据库中的测验。现在我想做的是提高程序的可用性和效率。
在 createQuestions 表单上,有八个文本框,用户可以在其中的 2 或 8 个框中填写答案。虽然我觉得这八个看起来都很乱,我想要的是有两个文本框,当第二个有文本时,第三个出现,依此类推..最多八个
我花了几个小时学习了一些基本的 JS,并设法掌握了它,因此有一个按钮可以更改输入框、标签和每行单选按钮的可见性属性。虽然我写了很多代码行,但效率很低:p - 给每个对象一个单独的 ID,但它仍然不能很好地工作。
下面是我的 HTML 布局示例,我有八个,虽然我可以用一个替换它,以及一个限制为 8 个的 PHP for 循环。
<div id="c">
<p class="subFont" id="cT" style="display:none;">Answer 3</p>
<input type="text" name="optionC" class="textbox" style="display:none;" id="cI">
<input type="radio" name="correctAns" value="c" id="cR" style="display:none;">
<input type ="button" name="add" value="d" style="background-color:green;" onclick="addBox('d', 'inline')" id="cB" style="display:none;">
</div>
关于如何编写上述脚本有什么建议吗?请您发表评论或简要解释您的工作原理,以便我可以从中学习:)
提前感谢你们,我非常感谢stackoverflow上的所有人;)
ps,有什么学习js资源的建议吗?
【问题讨论】:
-
我建议您查看 jQuery 或其他此类库,而不是为此使用纯 js。它会为您节省大量时间。基本思想是除了前两个之外隐藏您的输入,当用户开始输入第二个时,将显示第三个,依此类推。我不建议添加/删除元素。如果你隐藏/显示而不是附加/删除它会在 js 被禁用的情况下工作,并且通常会更少错误,我认为。
-
好的,现在调查一下,谢谢! :)
标签: php javascript html dom object