我试图根据用户从下拉列表中选择的内容,使用JQuery 1.5动态检查复选框。当列表更改时,它将返回此函数:
function displaySystemResults(html){
var v = html.split(",");
document.getElementById('fUpdateSystemName').value = v[0];
if (v[1] == "true"){
alert("true");
$('#fUpdateActiveFlag').setAttribute('checked','checked');
}
}
以下是下拉列表:
<td valign="top"><form:checkbox path="fUpdateActiveFlag"
name='fUpdateActiveFlag' value="checked" /> </td>
我无法通过复选框在框中打勾。谁能发现我做错了什么?我知道它击中了setAttribute方法,因为当它应该被设置为true时显示警告框。
答案 0 :(得分:2)
$('#fUpdateActiveFlag')
是ID选择器。
将其添加到您的复选框
<td valign="top"><form:checkbox ID="fUpdateActiveFlag" path="fUpdateActiveFlag"
name='fUpdateActiveFlag' value="checked" /> </td>
此外,jQuery函数不正确。 setAttribute
是JavaScript函数,虽然看起来你正在使用jQuery选择器,因此你选择的对象是jQuery对象,它没有一个名为setAttribute
的方法,而是使用{{1} }:
.attr()
参见工作示例http://jsfiddle.net/ruslans/8xp9g/
修改:根据@Dementic下面的评论,您可以继续使用$('#fUpdateActiveFlag').attr('checked','checked')
属性,但之后您必须将选择器更改为:
name