繁体   English   中英

JavaScript中的函数预期错误

[英]Function Expected Error in javascript

单击时要动态创建的复选框,我想获取属性值。它在IE 8,9,10中有效,但在IE 11中无效,chrome显示功能预期错误

<input type=checkbox checked='checked' id='SymptomFailureCodeId' TabIndex='54' style='cursor:pointer;' onclick=ChkClickEvt(this);  FailureCodeId="1" >


function ChkClickEvt(Obj) { 
    alert(Obj.attributes("FailureCodeId"));
}

尝试改用getAttribute

Obj.getAttribute("FailureCodeId")

或者,如果您想使用attributes属性,请不要将其用作方法。 这是一个NamedNodeMap

例如:

Obj.attributes["FailureCodeId"]

但是请注意,Firefox> 22和许多现代浏览器不再支持此功能。 MDN上了解有关此内容的更多信息

更好的方法是使用HTML5 data- *属性

标记

<input type='checkbox' id='SymptomFailureCodeId' data-FailureCodeId="1" />

JavaScript的

var article = document.querySelector('#SymptomFailureCodeId'),
          data = article.dataset;
console.log( data.FailureCodeId );

PS: 件事会让你很高兴

PPS:我相当确定,建立这样的自定义属性不是最佳实践。 我正在寻找进一步的证据来支持我的论点。 ;)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM