Javascript JQuery对话框将事件绑定到按钮
我在jQuery方面遇到了一些问题。我希望在用户单击某个链接删除某个内容时出现一个对话框,并提示他们确实要删除该内容。对话框看起来很好,但是当用户单击“是”按钮时,我看不到获取链接url的方法。我尝试使用Javascript JQuery对话框将事件绑定到按钮,javascript,jquery,jquery-ui,dialog,Javascript,Jquery,Jquery Ui,Dialog,我在jQuery方面遇到了一些问题。我希望在用户单击某个链接删除某个内容时出现一个对话框,并提示他们确实要删除该内容。对话框看起来很好,但是当用户单击“是”按钮时,我看不到获取链接url的方法。我尝试使用event.relatedTarget属性获取标记的url,但它为空。有人知道怎么做吗 代码 <div id="dialog" title="Delete Run"> <p><span class="ui-icon ui-icon-alert" style="flo
event.relatedTarget
属性获取标记的url,但它为空。有人知道怎么做吗
代码
<div id="dialog" title="Delete Run">
<p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 0 0;"></span>Are you sure you want to delete that run?</p>
</div>
$(document).ready(function() {
$('#dialog').dialog({
autoOpen: false,
width: 400,
modal: true,
draggable: false,
resizable: false,
buttons: {
"Yes": function(event) {
//Go to the url in $("a.delete")
},
"No": function() {
$(this).dialog("close");
}
}
});
$("a.delete").click(function(){
var url = $(this).attr("href");
$('#dialog').dialog('open');
return false;
});
});
是否确实要删除该运行
$(文档).ready(函数(){
$('#dialog')。dialog({
自动打开:错误,
宽度:400,
莫代尔:是的,
可拖动:错误,
可调整大小:false,
按钮:{
“是”:功能(事件){
//转到$中的url(“a.delete”)
},
“否”:函数(){
$(此).dialog(“关闭”);
}
}
});
$(“a.delete”)。单击(函数(){
var url=$(this.attr(“href”);
$('dialog')。dialog('open');
返回false;
});
});
是否确实要删除该运行
$(文档).ready(函数(){
$('#dialog')。dialog({
自动打开:错误,
宽度:400,
莫代尔:是的,
可拖动:错误,
可调整大小:false,
按钮:{
“是”:功能(事件){
var url=$(this.data('url');
window.location=url;
},
“否”:函数(){
$(此).dialog(“关闭”);
}
}
});
$(“a.delete”)。单击(函数(){
$('#dialog').data('url',$(this.attr(“href”));
$('dialog')。dialog('open');
返回false;
});
});
有点猜测,因为代码中没有元素A.delete?
使用jQuery的data()通常比全局变量更好。您可以在文档开头声明url变量,以便在任何函数中访问该变量。所以首先做
var-url
after(document).ready,然后从delete的click函数中删除var声明,最后将窗口位置设置为该变量,如下所示:window.location.href=url代码>最终您会得到类似的结果:
$(document).ready(function() {
var url;
$('#dialog').dialog({
autoOpen: false,
width: 400,
modal: true,
draggable: false,
resizable: false,
buttons: {
"Yes": function(event) {
window.location.href = url;
},
"No": function() {
$(this).dialog("close");
}
}
});
$("a.delete").click(function(){
url = $(this).attr("href");
$('#dialog').dialog('open');
return false;
});
});
我在这里用您的代码建立了一个示例:
$(document).ready(function() {
var url;
$('#dialog').dialog({
autoOpen: false,
width: 400,
modal: true,
draggable: false,
resizable: false,
buttons: {
"Yes": function(event) {
window.location.href = url;
},
"No": function() {
$(this).dialog("close");
}
}
});
$("a.delete").click(function(){
url = $(this).attr("href");
$('#dialog').dialog('open');
return false;
});
});