【问题标题】:Prevent Postback using JavaScript使用 JavaScript 防止回发
【发布时间】:2011-06-27 18:42:39
【问题描述】:

我有以下代码。当用户点击 [ENTER] (keycode = 13) 时,将重新提交表单。我想防止在这种情况下回发。当我将键码设置为 0 时,它什么也不做。页面回发仍在发生。如何防止帖子回发?

    jQuery(this.Elements.TxtClientId).keypress(function(e) {
        if (e.keyCode == 13) {
            e.keyCode = 0;
            alert("keycode: " + e.keyCode);
            thisTemp._internalClientId = jQuery(thisTemp.Elements.TxtClientId).val();
            jQuery(thisTemp.Elements.DDLClientName).val(jQuery(thisTemp.Elements.TxtClientId).val());
            thisTemp.UpdateTestDropdown();             
        }
    });

【问题讨论】:

    标签: jquery postback


    【解决方案1】:

    试试

     if(e.keyCode === 13){
           e.preventDefault();
           // remainder of your code
       }
    

    每个问题: Prevent a button to submit on enter key

    【讨论】:

    • 2个和3个“=”号有什么区别?
    • 分别使用/不使用类型强制检查是否相等。看到这个问题:stackoverflow.com/questions/523643/…(在你的情况下,任何一个都应该工作)
    【解决方案2】:

    您需要阻止事件的默认处理程序。您正在使用 jQuery,因此您可以使用内置的 preventDefault in jQuery

    【讨论】:

      【解决方案3】:

      我想你想要 preventDefault()!

      http://api.jquery.com/event.preventDefault/

      尝试将其设置为 0 而不是设置为 0

      e.preventDefault();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-06-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多