gpt4 book ai didi

JavaScript 回调困惑

转载 作者:行者123 更新时间:2023-11-28 02:47:30 25 4
gpt4 key购买 nike

我正在使用 DataTables 来显示行数据,在右侧的最后一列中有 2 个图像,一个用于编辑,一个用于删除。为了捕获点击事件,我使用:

 $('#datatable tbody tr a.delete img').live( 'click', function () {
});

一位 friend 给了我这个代码来尝试..

function fancyAlert(msg) {
jQuery.fancybox({
'modal' : true,
'content' : "<div style=\"margin:1px;width:240px;\">"+msg+"<div style=\"text-align:right;margin-top:10px;\"><input style=\"margin:3px;padding:0px;\" type=\"button\" onclick=\"jQuery.fancybox.close();\" value=\"Ok\"></div></div>"
});
}

function fancyConfirm(msg,callback) {
var ret;
jQuery.fancybox({
modal : true,
content : "<div style=\"margin:1px;width:240px;\">"+msg+"<div style=\"text-align:right;margin-top:10px;\"><input id=\"fancyConfirm_cancel\" style=\"margin:3px;padding:0px;\" type=\"button\" value=\"Cancel\"><input id=\"fancyConfirm_ok\" style=\"margin:3px;padding:0px;\" type=\"button\" value=\"Ok\"></div></div>",
onComplete : function() {
jQuery("#fancyConfirm_cancel").click(function() {
ret = false;
jQuery.fancybox.close();
})
jQuery("#fancyConfirm_ok").click(function() {
ret = true;
jQuery.fancybox.close();
})
},
onClosed : function() {
callback.call(this,ret);
}
});
}

function fancyConfirm_text() {
fancyConfirm("Ceci est un test", function(ret) {
alert(ret)
})
}

当我使用它时,它会起作用:

$('#datatable tbody tr a.delete img').live( 'click', function () {

if (!fancyConfirm("Are you sure you want to delete this record?"))
e.preventDefault();

});

我对回调部分感到困惑,因为当我单击“取消”时,该框消失,但页面仍然呈灰色并锁定。我想做的是,如果用户单击“取消”结束并恢复正常,如果用户单击“确定”,那么我需要将 var rowID 传递到文件“delete_row.php”...但这是新领域我..如果这是一个简单的 html 链接,我可以获取 .val 并完成,但在 DataTables 中我没有该选项..

这里有人能给我指出正确的方向吗?我已经用谷歌搜索了这个,但无法找到有关我的使用要求的信息。

最佳答案

fancyConfirm 函数需要回调函数,如果没有给出回调函数,fancybox onlined 事件中就会出现错误,这可能解释了为什么它保持灰色。

尝试将调用更改为:

fancyConfirm("Are you sure you want to delete this record?", function(ret) { })

关于JavaScript 回调困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4547009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com