gpt4 book ai didi

javascript - 当客户端 onblur 事件被触发并返回 false 时,如何取消文本框的服务器端 OnTextChanged 事件?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:35:54 24 4
gpt4 key购买 nike

我有一个带有 textbox 的网页,如下所示 -

<asp:TextBox ID="txtNumber" runat="server" size="5" MaxLength="9" 
AutoPostBack="True" OnTextChanged="txtNumber_TextChanged"
CssClass="txtBoxPage" Style="margin-left: 3px;"
Visible="false" onblur="return [some JS function] false;">
</asp:TextBox>

我想要一个功能,如果用户在 textbox 中输入 Nothing 即 ('') 并将光标移到 textbox 之外,那么 Postback 不应触发。目前,即使在 onblur 事件返回 false 后,它也会被触发。

最佳答案

如果文本框值为空,您可以抑制 TextChanged 事件,如下所示 -

  • 删除 onblur 函数并改用 onchange。
  • 在 Page_Load 中添加以下行 -

    protected void Page_Load(object sender, EventArgs e)
    {
    txtNumber.Attributes.Add("onchange", "if(checkEmptyValue(this)) {return false; }");
    }
  • 在标记中包含以下 JavaScript -

    String.prototype.trim = function() {     return this.replace(/^\s+|\s+$/g, ""); }; 

    function checkEmptyValue(o) {
    if (o.value == '' || o.value.trim() == '')
    return true;
    else
    return false;
    }

试试上面的代码,让我知道它是否有效。

关于javascript - 当客户端 onblur 事件被触发并返回 false 时,如何取消文本框的服务器端 OnTextChanged 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12813191/

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