如何不从JavaScript刷新页面?

时间:2012-11-27 12:54:45

标签: javascript jquery asp.net

我正在使用asp.Net在网站上工作,其中包含一个来自iframe的网页。 这个名为Districting的页面在aspx页面中有一个javascript代码。 我创建了一个函数,在单击“完成”按钮时执行。此函数测试用户所做的条件是否为真。 如果是,则加载另一个页面,如果不是,则出现警报,并且没有任何反应。 但事实上,正在发生一些事情:页面令人耳目一新,这不是我想要的。 这是按钮:

<button id="Button1" onclick="testing()">Done</button>

这是功能测试:

function testing() {
    if (conditions are true)
        //Go to another page
    else{
        alert("Wrong decision");
        //Stay in the current page without refreshing it
    }
 }

所以我需要的是在点击“完成”按钮时阻止页面刷新。

提前致谢:)

3 个答案:

答案 0 :(得分:1)

将您的代码更改为

function testing() {
    if (conditions are true)
        return true;
    else{
        alert("Wrong decision");
        return false;
    }
 }

和你的标签

<button id="Button1" onclick="return testing()">Done</button>    

此外,请参阅How to confirm navigation for a link in a href tag?,因为它非常相似。

答案 1 :(得分:0)

按钮是标准的提交按钮,表单中的按钮是什么?

如果这是真的,您可以在定义按钮类型时解决该问题:

<button type="button" id="Button1" onclick="testing()">Done</button>

答案 2 :(得分:0)

你的点击onclick的javascript函数需要返回false。以下应该有效:

<button id="Button1" onclick="testing(); return false;">Done</button>