我有此HTML线,并结合了树枝代码:
<a href="#" class="aaa" data-redirect="{{ path('rezervace_smazat', {'terminId':rezervaceTabulka[i]['id_rezervace']}) }}"> delete </a>
该行是循环的一部分,因此在最终结果中,它可以是多个具有不同值的数据还原属性的多个。
我需要将数据还原的值传递给jQuery函数,但仅在我单击"超文本链接"时是一个特定值。
$(document).ready(function() {
$('.aaa').on( "click", function(e) {
e.preventDefault();
$.confirm({
title: 'Smazat termín',
message: 'Opravdu chcete smazat tento termín?',
labelOk: 'Smazat',
labelCancel: 'Storno',
onOk: function() {
window.location.assign($(this).attr("data-redirect"));
}
});
});
});
该函数正常工作,除了该线路,我需要重定向到不同的URL。我需要传递到window.location.assign()函数函数来自数据redirect属性的特定值。
实际上$(this).attr(" data-redirect")不会从属性传递值。
谢谢您的帮助。
尝试使用。我希望这个会有所帮助。
$(this).data('redirect');
我相信是this
是一个问题。对不起,我只需要。
我的意思是
...
onOk: function() {
window.location.assign($(this).attr("data-redirect"));
^----- may not be referring to what you think it is.
}
...
快速解决方案是将其更改为so
的箭头函数onOk: () => { window.location.assign($(this).attr("data-redirect")); }
如果您需要更好的支持覆盖范围,则可以将变量this
分配为acy
$(document).ready(function() {
$('.aaa').on( "click", function(e) {
var self = this; // <--- here
e.preventDefault();
$.confirm({
title: 'Smazat termín',
message: 'Opravdu chcete smazat tento termín?',
labelOk: 'Smazat',
labelCancel: 'Storno',
onOk: function() {
window.location
.assign($(self)
.attr("data-redirect")); // <--- and here
}
});
});
});