我对jquery / javascript很新,我正在与一个无线电按钮挣扎。我希望根据来自数据库的变量检查单选按钮。我可以在我的控制台中看到该值,因此它是动态填充的,但我无法选中正确的单选按钮。
这是我的jquery:
$(document).ready(function() {
//if ($('input[name="Gender"] option[value="%%Gender%%"]'))
// $('input[name="Gender"] option[value="%%Gender%%"]').prop("checked", true);
if($('input[name="Gender"][value="%%Gender%%"]'))
($('input[name="Gender"][value="%%Gender%%"]').prop("checked",true))
console.log("%%Gender%%");
});
这是我的桌子(我知道这不是工作方式,但生成了html,我必须使用它),包括单选按钮:
<table cellspacing="0" cellpadding="0" border="0">
<tr style="height: 20px">
<td>
<input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_0" label="Gender" value="%%Gender%%">
</td>
<td class="defaultText" style="padding-right: 10px;">Male</td>
</tr>
<tr style="height: 20px">
<td>
<input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_1" label="Gender" value="%%Gender%%">
</td>
<td class="defaultText" style="padding-right: 10px;">Female</td>
</tr>
</table>
提前感谢您的帮助!
GRTS
答案 0 :(得分:1)
$('input[name="Gender"]').each(function( index ){
if($(this).val() == "%%Gender%%")
($(this).prop("checked",true));
});
答案 1 :(得分:1)
您的if语句似乎缺少大括号。
两个无线电输入都具有相同的值,因此将检查后者。
$(document).ready(function() {
$('input[name="Gender"]').each(function() {
if($(this).val() == '%%Gender%%') {
$(this).trigger('click');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table cellspacing="0" cellpadding="0" border="0">
<tr style="height: 20px">
<td>
<input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_0" label="Gender" value="%%Gender%%">
</td>
<td class="defaultText" style="padding-right: 10px;">Male</td>
</tr>
<tr style="height: 20px">
<td>
<input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_1" label="Gender" value="%%Gender%%">
</td>
<td class="defaultText" style="padding-right: 10px;">Female</td>
</tr>
</table>