带确认的Javascript警报

带确认的Javascript警报,javascript,javascript-events,telerik,Javascript,Javascript Events,Telerik,我的页面上有一个javascript警报弹出窗口。我遇到的问题是,它不是等待用户实际单击OK按钮,而是简单地执行重定向,这是在单击OK按钮之后应该执行的操作。谁能帮我调整一下代码,让它正常工作 function f() { ar ape =radalert('<div align=""center"" style=""font-weight: bold;""> OPEN BOX HERE</div>', 123, 200); if(ape)window.loca

我的页面上有一个javascript警报弹出窗口。我遇到的问题是,它不是等待用户实际单击OK按钮,而是简单地执行重定向,这是在单击OK按钮之后应该执行的操作。谁能帮我调整一下代码,让它正常工作

function f()
{

    ar ape =radalert('<div align=""center"" style=""font-weight: bold;""> OPEN BOX HERE</div>', 123, 200);
if(ape)window.location.href = "/Default.aspx";
Sys.Application.remove_load(f);
}

Sys.Application.add_load(f);
函数f()
{
ar ape=radalert('OPEN BOX HERE',123200);
if(ape)window.location.href=“/Default.aspx”;
系统应用。移除负载(f);
}
系统应用程序添加负载(f);

您没有使用JavaScript
警报(从内置功能的意义上讲),它看起来像是在使用一种叫做
雷达的东西(来自Telerik)。这意味着它不能像JavaScript
警报那样,在屏幕上时,脚本处理会突然停止

我对Telerik一无所知,但大多数警报替换都提供了一个回调,您可以传递该回调,在警报清除时触发该回调。这就是你想要你的
window.location.href=…
代码的地方

通常这看起来像这样:

function blah() {

    niftyAlertThingy("Here's my message", {
        onOK: function() {
            window.location.href = "/Default.aspx";
            // etc.
        }
    });
}
blah
函数立即返回,警报仍在页面上;然后,当用户单击OK时,警报代码调用您的回调


我确信Telerik
radalert
也有类似的功能…

您没有使用JavaScript
警报(从内置功能的意义上讲),它看起来像是在使用一种叫做
radalert
的东西(来自Telerik)。这意味着它不能像JavaScript
警报那样,在屏幕上时,脚本处理会突然停止

我对Telerik一无所知,但大多数警报替换都提供了一个回调,您可以传递该回调,在警报清除时触发该回调。这就是你想要你的
window.location.href=…
代码的地方

通常这看起来像这样:

function blah() {

    niftyAlertThingy("Here's my message", {
        onOK: function() {
            window.location.href = "/Default.aspx";
            // etc.
        }
    });
}
blah
函数立即返回,警报仍在页面上;然后,当用户单击OK时,警报代码调用您的回调


我相信Telerik
radalert
也有类似的功能……

我认为您的代码需要更多的解释,可能还需要您的代码(只是关于如何处理“确定”点击的相关代码)。我在telerik的经验不太好。我建议您尝试jqueryui。它使您能够更好地控制如何处理事件以及在何处处理事件

示例(来自)

$(函数(){
$(“#对话框”)。对话框({
自动打开:错误,
莫代尔:是的,
按钮:{
“是”:函数(){
$(此).dialog(“关闭”);
eval($(“#”)val();
},
“否”:函数(){
$(此).dialog(“关闭”);
},
“Maybe”:函数(){
$(此).dialog(“关闭”);
//单击“可能”时我们应该做什么?
}        
}
});
});

我认为您的代码需要更多的解释,可能还需要您的代码(只是关于如何处理“确定”单击的相关代码)。我在telerik的经验不太好。我建议您尝试jqueryui。它使您能够更好地控制如何处理事件以及在何处处理事件

示例(来自)

$(函数(){
$(“#对话框”)。对话框({
自动打开:错误,
莫代尔:是的,
按钮:{
“是”:函数(){
$(此).dialog(“关闭”);
eval($(“#”)val();
},
“否”:函数(){
$(此).dialog(“关闭”);
},
“Maybe”:函数(){
$(此).dialog(“关闭”);
//单击“可能”时我们应该做什么?
}        
}
});
});

您可以使用
add\u close
方法附加回调函数,以了解警报何时关闭:

var win = radalert('foo');
win.add_close(function () {
  alert('bar'); // This will be executed when the radalert is closed.
});
更多信息:


您可以使用
add\u close
方法附加回调函数,以了解警报何时关闭:

var win = radalert('foo');
win.add_close(function () {
  alert('bar'); // This will be executed when the radalert is closed.
});
更多信息:


Telerik也有类似的功能,但它是由MS AJAX事件订阅模型驱动的,没有回调。CMS在他的回答中涵盖了这一点,大+1到CMS用于查找该死的文档@新月:当然是回电话了!;-)@你知道我的意思;)@CF:我没有,但没关系。:-)Telerik也有类似的功能,但它是由MS AJAX事件订阅模型驱动的,没有回调。CMS在他的回答中涵盖了这一点,大+1到CMS用于查找该死的文档@新月:当然是回电话了!;-)@你知道我的意思;)@CF:我没有,但没关系。:-)对
radalert
+1大时间的返回值进行了很好的研究,在我给它的时候,我找不到爆破的参考文档。对
radalert
+1大时间的返回值进行了很好的研究,在我给它的时候,我找不到爆破的参考文档。