使用javascript停止按钮OnClick事件

Ste*_*ven 3 javascript c# asp.net jquery

我试图在我的按钮的点击事件发生在服务器端之前运行一些javascript,但是javascript代码运行,并且服务器端代码在此之后运行,无论如何.这就是我所拥有的:

<script type="text/javascript" language="javascript">
  $(document).ready(function() {
    SubmitClick = function() {
        if ($("#<%= fuFile.ClientID %>").val() == "") {
            $("#error").html("File is required");

            return false;
        }
    }
  });
</script>

<asp:FileUpload ID="fuFile" runat="server" />

<asp:Button ID="btnSubmit" runat="server" Text="Submit"
  OnClientClick="SubmitClick()" UseSubmitBehavior="false"
  OnClick="btnSubmit_Click" />

<span id="error"></span>
Run Code Online (Sandbox Code Playgroud)

我认为在javascript函数中设置UseSubmitBehavior="false"和返回false会起作用,但事实并非如此.在服务器端代码运行之前,我的错误消息会显示一秒钟.

我在这做错了什么?

Jer*_*emy 12

通常,要取消客户端单击,您将添加此项 return false;

您可以更新代码来执行此操作,它应该工作: OnClientClick="return SubmitClick();"


Jup*_*aol 6

如果您使用的是JQuery:

$btn.on("click", function (e) {
    e.preventDefault();
}
Run Code Online (Sandbox Code Playgroud)