Javascript 动态选中单选按钮,基于';价值';属性,不检查
正在尝试获取一个表单,以加载以前已检查的收音机(在新加载时)的页面 该页面的提交内容作为php变量保存,我可以将其传递到javascript中,其余内容应该很简单,但它对我不起作用 我的代码:Javascript 动态选中单选按钮,基于';价值';属性,不检查,javascript,html,forms,radio-button,Javascript,Html,Forms,Radio Button,正在尝试获取一个表单,以加载以前已检查的收音机(在新加载时)的页面 该页面的提交内容作为php变量保存,我可以将其传递到javascript中,其余内容应该很简单,但它对我不起作用 我的代码: <div class="question"> <label for="sv_213">Question?</label> <input class="radio"
<div class="question">
<label for="sv_213">Question?</label>
<input
class="radio"
type="radio"
value="Yes"
name="sv_213"
/>Yes
<input
class="radio"
type="radio"
value="No"
name="sv_213"
/>No
</div>
在上面的js中
var $213 = <dynamically generated content>
var$213=
使其设置为与选中单选按钮的值相等
这是一个js小提琴,它不工作:
非常感谢你的帮助
顺便说一句,我的代码是基于这一点,之前提出的问题:
您需要在值“是”周围加引号,因为这是一个字符串,而不是布尔值或数字
var $213 = "Yes";
此外,还需要使用+将变量添加到选择器中,如下所示:
$("input[name=sv_213][value="+$213+"]").attr('checked', true);
更新小提琴,工作:
完整js代码:
$(function() {
var $213 = "Yes";
$("input[name=sv_213][value="+$213+"]").attr('checked', true);
});
更新:##自jQuery 1.6以来,还可以使用带有布尔值的.prop方法(这应该是首选方法):
在我的例子中,.attr()方法不适用于动态选择单选按钮,而.prop()方法适用于动态选择单选按钮。在D3中,如果有人想知道的话
d3.selectAll("input[name='sv_213'][value=" + $213 + "]").property("checked", true);
这不会改变我在页面或JSFIDLE上的结果:
$("input[name=sv_213][value="+$213+"]").prop('checked', true);
d3.selectAll("input[name='sv_213'][value=" + $213 + "]").property("checked", true);