jQuery对话框的一个问题
An issue with jQuery dialog
假设我有以下链接:
<a onclick="confirmDelete()" href="delete.do&xyz">Delete user</a>
,下面是confirmDelete函数:
function confirmDelete()
{
if(!confirm("delete user?"))
{
return false;
} else
{
return true;
}
}
基本上当点击链接时,它会检查用户是选择ok还是取消,然后根据它执行。
问题:我有数百个类似的链接在我的平台上,我们决定把所有的javascript警报jquery对话框。
我使用了以下命令以某种方式覆盖警报:
$(function(){
window.confirm = function(message) {
$('#overrideAlert').text(message).dialog({
resizable: false,
modal: true,
buttons: {
"Ok": function() {
$( this ).dialog( "close" );
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
};
});
它工作得很好,警报出现作为一个jquery对话框,但问题是,因为这是不可能从一个处理程序,如对话框返回的东西,我不知道如何告诉我的按钮在文件中,用户选择了ok或取消。
基本上我不知道如何把它们联系在一起。
请帮
问题是由于javascript的异步性质。因为你正在使用jQuery。可以试试下面的方法
$('a[onclick="confirmDelete()"]')
.attr('onclick','')
.click( function(){
var anch = this,
message = "delete user?";
$('#overrideAlert').text(message).dialog({
resizable: false,
modal: true,
buttons: {
"Ok": function() {
$( this ).dialog( "close" );
alert( "window.location=" + anch.href );
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
return false ;
});
jsfiddle http://jsfiddle.net/wB389/
可能是这样的:
"Ok": function() {
window.location=deleteURL;
$( this ).dialog( "close" );
},
可能会更复杂一些因为你使用了相对url但是你可以使用window.location.protocol + window.location.port + window.location获得当前的url。Window.location.host + window.location.pathname
相关文章:
- 火狐中的多个问题,但在 chrome 中工作正常,没有一个问题
- 是否从超时内开始间隔是一个问题
- java脚本我需要帮助来解决一个问题
- Dreaded 100%边栏高度-jQuery修复,但另一个问题出现了
- I'我在用JavaScript进行验证时遇到了一个问题
- Jstree-Can't在AJAX调用中选中复选框,适用于经典调用.一个问题
- 我在角度指令和角度路由中有一个问题
- 我有一个问题,使用 Javascript 或 Jquery 创建具有字符串计数的动态字段
- 如何在测验应用中移动到下一个或上一个问题
- 如何创建按钮转到测验软件中的下一个问题
- 我对用php代码创建的HTML有一个问题
- 我想使用fbi . event .subscribe记录跟踪值在Facebook喜欢按钮,但遇到了一个问题
- 如果效率是一个问题,如何修改JavaScript修剪函数?
- 一个问题与大量的图像-广告画廊插件
- 新的局部变量在大的FOR循环,这是一个问题
- 我在放大分形(webgl)时遇到了一个问题
- jQuery对话框的一个问题
- 在javascript中,通过一个对象数组为每个对象发出一个问题
- 浏览器渲染网页的顺序是什么,为什么脚本阻塞是一个问题
- 闭包编译器外部解决了一个问题,但我不明白为什么