我看过这个:Radio Button change event not working in chrome or safari并没有给我我想要的解决方案。我有一个带单选按钮的简单表单和一个onClick =“jarod();”和jarod()是一个上面调用的函数。见代码:
<script type="text/javascript">
function jarod()
{
alert('yes');
}
</script>
HTML表单是:
<form id="form_601799" class="appnitro" method="post" action="/formbuilder/view.php">
<div class="form_description">
<h2>Input Information to Prepare Answer</h2>
<p></p>
</div>
<ul >
<li id="li_1" >
<label class="description" for="element_1">Number of paragraphs: </label>
<div>
<input id="element_1" name="element_1" class="element text small" type="text" maxlength="255" value=""/>
</div>
</li> <li id="li_2" >
<label class="description" for="element_2">Paragraph 1: </label>
<span>
<input id="element_2_1" name="element_2" class="element radio" type="radio" value="1" />
<label class="choice" for="element_2_1" >Admit</label>
<input onClick="jarod();" id="element_2_2" name="element_2" class="element radio" type="radio" value="2" />
<label class="choice" for="element_2_2">Qualified Admission</label>
<input id="element_2_3" name="element_2" class="element radio" type="radio" value="3" />
<label class="choice" for="element_2_3">Deny</label>
<input id="element_2_4" name="element_2" class="element radio" type="radio" value="4" />
<label class="choice" for="element_2_4">Qualified Denial</label>
<input id="element_2_5" name="element_2" class="element radio" type="radio" value="5" />
<label class="choice" for="element_2_5">Legal Conclusion</label>
</span>
</li>
<li class="buttons">
<input type="hidden" name="form_id" value="601799" />
<input id="saveForm" class="button_text" type="submit" name="submit" value="Submit" />
</li>
</ul>
</form>
如你所见,有onclick =“jarod();”试图调用javascript函数。当onclick =“jarod();”时,这没有任何作用。在输入标签部分,但如果我将其移动到标签部分,如:
<label class="choice" for="element_2_1" onClick="jarod();">Admit</lable>
此“标签”在Chrome中运行良好。如果选择了合格入场或合格拒绝,我将用它来显示文本区域。
感谢您的帮助。
PS - 我也试过把onclick =“jarod();”在文本字段中,它在Chrome中运行良好。单选按钮和Chrome有什么关系?
编辑:这令人沮丧。我使用phpform.org创建表单以节省时间。它在顶部使用此DOCTYPE: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
当我使用它时:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
它运作得很好。有人评论说它是XHTML / XML的一种形式,而且确实如此。至少我能够在最后几个小时睡觉,而不是坐在电脑前试图找出解决方案!
现在是坏事,我的CSS看起来不对。我想我宁愿有格式问题而不是编程问题。
贾罗德
答案 0 :(得分:2)
您的文档是否以任何基于XML的HTML形式编写?因为如果是这样,那么onClick将被忽略,因为名称区分大小写。如果你把你的整个文档放好,那么有人可以在原始文档的上下文中测试所有内容,而且有人肯定可以给你一个明确的答案(我很快就会去睡觉)。
目前,我的回答是尝试将onClick更改为onclick in the radio of the radio button。
此外,您需要将每个单选按钮放在内部,而不仅仅是其中一个。其他单选按钮是单独的HTML元素,因此来自其中一个的onclick事件不适用于任何其他。
答案 1 :(得分:1)
由于您未提供DOCTYPE问题,因此可能是onclick或onClick
你应该检查一下。 onclick or onClick?也可以尝试
onclick="javascript:jarod();"
从onclick开始为无线电工作,为OSX工作 这是一个小提琴
答案 2 :(得分:0)
我在无线电输入上遇到了类似的问题(无法使onclick=""
工作),并且解决方案已将onclick
更改为onchange
。