所以,我让 JQuery动态生成控件.输入控件称为生成的EnterLink控件数.在生成新的输入控件时,我想更改先前创建的输入,以便禁用它.现在我的代码看起来如此,它不起作用. if (rowCount 0) { var l
if (rowCount > 0) { var last = rowCount - 1; $("#EnterLink" + last).disabled = true; }
这看起来应该可以工作,我检查了控件的ID,这就像它们的格式一样.
替换这个:$("#EnterLink" + last).disabled = true;
有了这个:
$("#EnterLink" + last).attr('disabled', true);
jQuery不直接通过其$()函数公开常规DOM属性.你所拥有的是一个包装集(被授予,只会匹配1个元素,但仍然是一个集合),它扩展了元素并为它添加了所有jQuery的优点.
如果你想获得#EnterLinkX的原生DOM元素,你会这样做:
$("#EnterLink" + last)[0].disabled = true;
这是有效的,因为$()的返回值是一个包含匹配元素的类数组结构. [0]将包含第一个(仅在此情况下)匹配.这样就可以访问innerHTML等内容.但是,99%的情况下,你最好选择“jQuery方式”,因为这是图书馆的重点.在这种情况下,您可以使用它的attr
函数来设置属性,如果您愿意,可以使用removeAttr
函数来删除禁用的值.