我正在javascriptissexy.com上的“学习JavaScript”路径下进行学习,目前已经完成测验。通过查看书籍或此处的帖子,我已经弄清了我所做的几乎所有事情。我怀疑代码是否漂亮,但是鉴于这是我做过的第一个项目,因此我感到非常自豪。
无论如何,我已经使用了构造函数和for循环将问题添加到一个div中,并将可能的答案添加到另一个innerDiv中。我不知道的是如何使innerDiv答案显示为复选框。
我更改了这一行:
var innerDiv = document.createElement('div');
至:
var innerDiv = document.createElement('input');
但是所有要做的就是将其更改为文本输入框,而我所做的任何其他更改都破坏了代码。我感到沮丧,但不想退出,我喜欢这样做,我真的很想学习。
有人能帮我吗?我知道我可以使用jQuery更轻松地完成此操作,但是我尝试首先以困难的方式学习它,然后当我以这种方式使它工作时,我将回过头来对其进行更改以使其工作得更好和更多有效率的。
这是工作代码的jsfiddle:http://jsfiddle.net/joshrlangley/prx9h8sm/
谢谢!
最佳答案
您需要创建一个新的输入对象,设置该对象的属性以使其成为一个复选框,然后将其添加到DOM中:
var cb = document.createElement('input');
cb.setAttribute("type", "checkbox");
cb.setAttribute("value", q.Answer[j]);
innerDiv.appendChild(cb);
小提琴:
http://jsfiddle.net/prx9h8sm/1/
关于javascript - 通过构造函数循环生成复选框以回答测验问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25208569/