[英]jquery data() method does not work in IE9
我有以下链接:
<a href="/Packages/PackageActionDownloadAsync" data-ajax-type="Download" data-ajax-packageid="AGI-VS-GAME-M52-1.5.3.2.67" data-ajax-machineid="30" class="iconGear action tip" data-hasqtip="true" oldtitle="Download" title="" aria-describedby="qtip-1">Download</a>
和javascript代码:
var obj = $(this),
objData = obj.data(),
packageId = objData.ajaxPackageid,
operation = objData.ajaxType;
我尝试了这个:
alert(objData.ajaxPackageid);
alert(objData.ajaxPackageId);
alert(objData.AjaxPackageId);
它们都返回“未定义”。 唯一可行的方法是:
alert(objData.ajaxType);
到底是怎么回事? 我正在使用“ jquery-1.7.1.js”
我很惊讶他们中的任何一个都像那样访问它们。 您需要通过jQuery中的字符串名称访问它们。 像这样:
var obj = $(this);
alert(obj.data("ajax-packageid"));
alert(obj.data("ajax-type"));
alert(obj.data("ajax-machineid"));
看看jquery .data
对象
演示: http : //jsfiddle.net/xFmn3/
您需要将要接收的data()
的密钥传递给data()
函数。
var obj = $(this),
packageId = obj.data("ajax-packageid"),
operation = obj.data("ajax-type");
工作示例: http : //jsfiddle.net/sUSCe/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.