【问题标题】:Call a server side method when a textbox value is programatically changed by javascript当文本框值由 javascript 以编程方式更改时调用服务器端方法
【发布时间】:2013-03-19 00:05:59
【问题描述】:

我有一个文本框,

<input type="text" id="hoverChange" runat="server" onchange="hoverAction"/>

我在服务器端代码中定义了以下方法,

protected void hoverAction(object sender, EventArgs e)
{
    string sectionName=hoverChange.Value;
    if (sectionName != "") sectionHoverUserControl.displayHoverContent(sectionName);
}

当我以编程方式为文本框设置一些值时,我需要执行上述方法。我尝试执行以下操作,但都没有触发 onchange 事件,

document.getElementById('<%= hoverChange.ClientID %>').value = "some_text";

$('#<%= hoverChange.ClientID %>').val("some_text");

感谢您的帮助! 谢谢, 哈里什

【问题讨论】:

    标签: javascript asp.net onchange


    【解决方案1】:

    当您以编程方式更新输入值时,浏览器不会触发“更改”事件。您可以使用 jQuery 执行以下操作:

    $('#<%= hoverChange.ClientID %>').val("some_text").change();
    

    自己触发事件。 (你可以不使用 jQuery 来完成,但它会涉及更多。)

    【讨论】:

    • 我意识到这篇文章没有被标记为jQuery,但它被用在了问题的主体中,所以我称之为公平:-)
    【解决方案2】:

    使用 keyup 事件触发必要的代码..

    【讨论】:

      猜你喜欢
      • 2017-11-26
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 2023-02-13
      • 2019-11-23
      • 1970-01-01
      • 1970-01-01
      • 2011-08-23
      相关资源
      最近更新 更多