我有以下标签:
<a href="#" class="Test" data-url="/api/users/unlock">Test</a>
以及以下 JQuery:
$('a.Test').click(function (e) {
alert(e.data); >> This returns null
jQuery.support.cors = true;
$.ajax({
url: e.data('url'),
type: 'GET',
dataType: 'json',
success: function (data) {
alert(data)
},
error: function () {
alert("Failure!");
}
});
});
基本上,我尝试在 Ajax 调用中使用 data-url 的 url。
这不起作用,当我尝试警报(e.data)时,我得到空值。
我做错了什么?
谢谢!
最佳答案
需要使用data()函数,如:
您需要$(this).data("url");
而且,要注意的是, $(this) 将失去 $.ajax 调用内的范围,因此请务必在其外部设置一个变量并使用它。即
$('a.Test').click(function (e) {
var url = $(this).data("url");
jQuery.support.cors = true;
$.ajax({
url: url,
type: 'GET',
dataType: 'json',
success: function (data) {
alert(data)
},
error: function () {
alert("Failure!");
}
});
关于jquery - 获取数据属性值...数据返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15974077/