我已经创建了一个我在Plone中使用的简单测验(这就是为什么我使用'jQuery'而不是'$')并且出于某种原因我的javascript代码用于动态计算分数导致单选按钮在IE 8中显示不正确。由于显示不正确,我的意思是在单击按钮后正确计算了值,但子弹似乎没有显示该按钮已被单击。我正试图纠正这个问题。它适用于所有其他浏览器。 This是我的简单测验代码的小提琴。在IE8中,加载jquery时单选按钮无法按预期工作,但如果你注释掉所有的javascript,单选按钮工作正常。
非常感谢任何帮助。
答案 0 :(得分:2)
嗯......我认为你问题的很大一部分是<input>
元素的错误使用。输入是自动关闭标签。你不能用其他HTML包装它们。
<input type="text"><span>HTML here</span></input> <!-- WRONG! -->
<input type="text" /> <span>HTML here</span> <!-- Correct -->
<强>更新强>
有趣。刚注意到你从onchange事件返回false
。有具体原因吗?具有讽刺意味的是,IE8实际上可能是唯一表现正常的人。返回false
应该被理解为基本上“取消将要做的事情”。例如,在点击链接的情况下,它会导致不遵循URL。在提交表单时,它将取消POST到服务器。 IE8可能会将其解释为:取消更改收音机的外观。
答案 1 :(得分:1)
jQuery('input').change(function() {
// ... [snip] ...
return false;
});
你为什么要回归false
?这通常告诉浏览器“取消”事件的默认行为。如果有的话,我很惊讶Firefox 没有表现出这种行为。
删除return false
;除非我遗漏了什么,否则你的应用程序逻辑根本不需要它。