【发布时间】:2010-03-19 01:04:51
【问题描述】:
这看起来很简单,我不知道这是一个错误,还是我做错了什么。
我要做的是在 jquery 中构建一个复选框输入,然后返回输入的字符串。我有这个代码:
var obj = $('<input>');
obj.attr('disabled', 'disabled');
obj.attr('type', 'checkbox');
obj.attr('checked', 'checked'); // this does not work!
无论我如何尝试渲染这个 obj,'checked' 属性永远不会被输出。
所以我试过了:
$('<div>').append(obj).remove().html();
然后它返回:
<input type="checkbox" disabled="disabled" />
我已经尝试设置一个 id 属性,它没有任何区别。我也试过这个,但它不起作用:
obj.attr('checked', true);
有什么建议可以让输入标签的checked属性设置为'checked'(通过jquery)?
我意识到我可以通过字符串连接来做到这一点,但现在我真的很想知道为什么它没有按应有的方式工作。
编辑
您可以在 firebug 中自己尝试一下。以我的方式或 cletus' 的方式创建 obj,然后尝试将其呈现为字符串。你会发现 'checked' 属性永远不会被渲染。
【问题讨论】:
-
obj.attr('checked', true);应该可以工作...也许是您的选择器造成了麻烦。你能在 Firebug 中测试你的选择器,看看它是否返回任何东西吗?
-
它不起作用。没有向 HTML 添加任何内容。很奇怪。您是否向 jq 提交了错误报告?
-
尚未提交错误 - 现在将提交!