如果选中了收音机,我想要替换p标签值。
我写了一些JS来做这件事,但没有改变。 这是我的代码(我使用jquery)
<script>
$(function(){
if ($('#A:checked')) {
$("#change_me").html('<input type="radio" value="1" name="fruit">')
}
if ($('#B:checked')) {
$("#change_me").html('<input type="radio" value="2" name="fruit">')
}
}
</script>
<input type="radio" name="e" id="A" checked="checked">
<input type="radio" name="e" id="B">
<p id="change_me">
<input type="radio" value="1" name="fruit">
</p>
感谢。
答案 0 :(得分:1)
:checked
选择器匹配当前检查的元素
编写$('#B:checked')
将返回包含零个或一个元素的jQuery对象。它不能直接用作条件。
相反,您可以检查if ($('#B:checked').length)
以查看jQuery对象中是否包含任何内容。
答案 1 :(得分:1)
首先,如果只有值发生变化,则无需重新创建单选按钮。
$(function(){
if ($('#A:checked').size() > 0) {
$("#change_me input[type=radio]").val('1')
}
if ($('#B:checked').size() > 0) {
$("#change_me input[type=radio]").val('2')
}
}
HTML:
<input type="radio" name="e" id="A" checked="checked">
<input type="radio" name="e" id="B">
<p id="change_me">
<input type="radio" value="1" name="fruit">
</p>
答案 2 :(得分:0)
将您拥有的JavaScript代码替换为following
$(function(){
$('input[name=e]').change(function(){
if($(this).attr('id') == 'A')
{
$("#change_me input").val('1');
}
else
{
$("#change_me input").val('2');
}
});
});