我有一个文本框
<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");
多谢您的协助!
谢谢,
ish
最佳答案
当您以编程方式更新输入的值时,浏览器不会触发“更改”事件。您可以使用jQuery执行以下操作:
$('#<%= hoverChange.ClientID %>').val("some_text").change();
自己触发事件。 (您可以在没有jQuery的情况下完成此操作,但要花更多的精力。)
关于javascript - 当JavaScript通过编程方式更改文本框值时,调用服务器端方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15489240/