我正在禁用基于复选框的表单…
这是我到目前为止所得到的:
HTML:
<table id="shipInfoTable"> <tr> <td>Name:</td> <td><input type="text" name="name" /></td> </tr> ... </table>
Javascript选择器/属性操作(jquery):
$("#shipInfoTable tbody tr td input").each(function(index,item){ item.attr("disabled",true); });
Chrome Dev Console错误:
未捕获的TypeError:对象#<一个HTMLInputElement>没有方法’attr’
当我警告.each()中的项目时,它会发出警告[object HTMLInputElement]
不太确定如何正确选择输入元素.我究竟做错了什么?
解决方法
该函数不会为您提供jQuery对象.它应该是:
$("#shipInfoTable input").each(function(index,item){ $(item).attr("disabled",true); });
(注意我也简化了你的选择器,它仍然有效)
如果你没有对每个项目做任何事情,这也会起作用:
$("#shipInfoTable input").attr("disabled",true);