我有以下链接:

<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/

07-24 17:32