return false不停止执行

时间:2013-10-29 21:02:58

标签: jquery asp.net-mvc partial-views

我正在调用一个位于不同位置(另一个控制器)的模态对话框,进入当前页面。这个模态对话框有一个Apply按钮,它应该从模态对话框中的网格中获取一些数据,让它自己关闭,然后将这些数据填充到当前页面的某个位置。此模式对话框的编写方式是在单击Apply按钮后,它会重定向到某个控制器的操作方法。

但是,从我当前的页面,我应该从网格中获取数据并将其填充到当前页面并关闭模式对话框。无需任何重定向。

所以,为此,我在return false按钮click事件的末尾添加了Apply

$("body").on("click", "#Apply", function () {

    if(true)  // do something 
    else  // do something else 

    return false; // this is not being effective
});

模态对话框对控制器方法进行$.post调用,即使在当前页面中执行return false后也无意中调用该方法。在实际的模态对话框(实际上是部分视图)定义中可以找到以下代码:

$("body").on("click", "#Apply", function () {

    if(true)  //do something  
    else  // do something else 

    $.post("/ControllerName/ActionMethod", { _someData: someData}, function(data) {
    if (data == "True") { // this particular action method is returning a bool, hence they are checking it like this!
        window.location.href = '@Url.Action("Index", "SomeOtherController")';
    }
});

我也试过了event.preventDefault(),但这也不起作用。实际上,return false只是调用我刚发现的event.preventDefault()event.stopPropagation()

在这种情况下如何防止被重定向?

0 个答案:

没有答案