尝试获取一个表单来加载之前检查过的无线电的页面(在新加载时)。
该页面的提交内容作为 php 变量保存,我可以将其传递到 JavaScript 中,其余的应该很简单,但它对我不起作用。
我的代码:
<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>
我的JavaScript:
$(function() {
var $213 = Yes;
$("input[name='sv_213'][value="$213"]").attr('checked', true);
});?
在上面的js中
var $213 = <dynamically generated content>
将其设置为等于选中的单选按钮的值
这是一个 js 小提琴,它不起作用: http://jsfiddle.net/CW8AC/
非常感谢您的帮助。
顺便说一句,我的代码是基于这个之前提出的问题: 从单选按钮组中设置选定的单选按钮的值
您的值“Yes”需要用引号引起来,因为这是一个字符串,而不是布尔值或数字。
var $213 = "Yes";
此外,您需要使用 + 将变量添加到选择器中,如下所示:
$("input[name=sv_213][value="+$213+"]").attr('checked', true);
更新了小提琴,工作:http://jsfiddle.net/CW8AC/1/
完整的js代码:
$(function() {
var $213 = "Yes";
$("input[name=sv_213][value="+$213+"]").attr('checked', true);
});
$("input[name=sv_213][value="+$213+"]").prop('checked', true);
在我的例子中,.attr() 方法不能动态选择单选按钮,而 .prop() 可以。
JavaScript 解决方案是:- 仅适用于两 (2) 个单选按钮:
let radios = document.getElementsByName(nameProperty);
let value = "1";//value you want to compare radio with
if (radios[0].value == value) {
radios[0].checked = true;
}else{
radios[1].checked = true;
}
对于三个或更多单选按钮:
let radios = document.getElementsByName(nameProperty);
let value = "1";//value you want to compare radio with
for (let i = 0, length = radios.length; i < length; i++) {
if (radios[i].value == value) {
radios[i].checked = true;
// only one radio can be logically checked, don't check the rest
break;
}
}
在 D3 中,以防有人想知道。
d3.selectAll("input[name='sv_213'][value=" + $213 + "]").property("checked", true);
nikal...chal nikal.....wapas mat aana nikalllll.....