0

我正在使用 的网站上工作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
    }
 }

所以我只需要在单击“完成”按钮时防止页面刷新。

提前致谢:)

4

3 回答 3

1

将您的代码更改为

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

和你的标签

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

另外,请参阅如何确认 href 标记中链接的导航?,因为它非常相似。

于 2012-11-27T13:08:29.227 回答
0

触发 onclick 的 javascript 函数需要返回 false。以下应该有效:

<button id="Button1" onclick="testing(); return false;">Done</button>
于 2012-11-27T13:04:48.357 回答
0

按钮是标准的提交按钮,那么表单中的按钮也是如此吗?

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

<button type="button" id="Button1" onclick="testing()">Done</button>
于 2012-11-27T13:01:25.607 回答