我有这段代码:
<script>
$(document).ready(
function()
{
$('#radans').on("click",function(event)
{
$('#ansform').append("<input type='submit' value='accept answer'>")
});
});
</script>
我有几个带有id =“radans”的RadioButton和形式为id =“ansform”。 当我点击第一个RadioButton处理程序捕获此事件,但当我点击第二个,第三个RadioButton时,处理程序不捕获此事件。我怎么解决这个问题?
更新
<form id = "ansform" action=/question method="post">
<p>Answers:</p>
<input id ="radans" type="radio" name="ansvar" value="0"> yes<br>
<input id ="radans" type="radio" name="ansvar" value="1"> no<br>
谢谢大家。真的我有重复ID的错误
答案 0 :(得分:1)
&#34;我有几个RadioButton,id =&#34; radans&#34;&#34;
这是错误的。 Id应该是唯一的。你不能有很多。
在您的示例$('#radans').on
中仅激活第一个ID。
尝试在Radiobuttons上添加相同的类,例如
<input class ="radans" type="radio" name="ansvar" value="0"> yes<br>
<input class ="radans" type="radio" name="ansvar" value="1"> no<br>
然后使用此代码:
$(document).ready(
function()
{
$('.radans').on("click",function(event)
{
$('#ansform').append("<input type='submit' value='accept answer'>")
});
});
答案 1 :(得分:1)
单页中应该有唯一的ID,即不要使用重复的ID。
答案 2 :(得分:0)
元素的ID必须是唯一的,使用类属性代替或使用id对相似元素进行分组,然后使用类选择器来选择它们
而不是<input id="radans" .... />
使用<input class="radans" .... />
然后
$(document).ready(function () {
$('.radans').on("click", function (event) {
$('#ansform').append("<input type='submit' value='accept answer'>")
});
});
答案 3 :(得分:0)
ID是唯一的,因此只有第一个元素将由jQuery匹配。您应该将ID分配给类。
$('.radans').on('click', function() {
$('#ansform').append('<input type="submit" value="accept answer">');
});