gpt4 book ai didi

javascript - ASP.NET/JavaScript - 为什么 "Return False"不阻止回发?

转载 作者:数据小太阳 更新时间:2023-10-29 04:26:38 25 4
gpt4 key购买 nike

我觉得我已经做过很多次这个场景,而且它通常有效,所以我显然遗漏了一些东西。

这是我的服务器端 ASP.NET 按钮:

<asp:Button ID="btnFoo" runat="server" Text="Foo" CssClass="button foo" OnClientClick="foo_Click();" />

哪个 get 在客户端呈现为:

<input type="submit" name="reallylongclientid" value="Foo" onclick="foo_Click();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(reallylongclientidandpostbackoptions, false, false))" id="reallylongclientid" class="button foo">

那里没有惊喜。

这是我的 JavaScript 函数中的惊喜:

function foo_Click() {
return false;
}

好吧,还有更多内容,但我将其删减以证明一个观点。

当我点击按钮时,它会调用客户端函数,并返回 false。

但它仍然回传到服务器,为什么?

我基本上想通过单击按钮来执行此操作:

  1. 进行客户端验证。
  2. 如果验证通过,回发
  3. 如果不是,请在表单上显示一些错误消息。

当然,我可以将其更改为客户端按钮(input type="button")并在需要时手动启动回发,但我不需要那样做.还是应该?

最佳答案

编写 return 语句,这样当你点击按钮时它会 return false 不允许提交表单

 <asp:Button ID="btnFoo" runat="server" Text="Foo" CssClass="button foo" 
OnClientClick="return foo_Click();" />

关于javascript - ASP.NET/JavaScript - 为什么 "Return False"不阻止回发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3421329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com