1

我有一些没有触发的 OnTextChanged 事件。PostBack 设置为 true,并且它们正在从 asp.net / java 代码中的其他位更改(使用当前日期/时间)。它们的值正在更改,因此事件应该触发但它们不是:

<asp:TextBox ID="lblRoute" runat="server" AutoPostBack="true" OnTextChanged="btnRoute_Click" BorderColor="White" BorderStyle="None" ForeColor="White" Width="5px"></asp:TextBox>

正如我所提到的,这个文本框的值正在改变(它是可见的,但看起来不是——它的存在纯粹是为了触发它的事件),但该事件没有被触发。

编辑 - 只是为了填写更多空白,用户以这种方式按下按钮:

<button id="btnRoute" onclick="GetRoute(); return false;" runat="server" style="width: 30%">Route</button>

按钮最终调用它(正如我提到的,当标签被更改时被调用):

document.getElementById("lblRoute").value = Date.now();

这改变了标签 lblRoute,它应该触发我们的事件(是的,被调用的函数确实存在)。到目前为止,正如其他人所说,在更改标签后,我可能需要更改焦点才能触发它。任何想法我会怎么做?

4

2 回答 2

1

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.textbox.textchanged(v=vs.110).aspx

当文本框的内容在发送到服务器的帖子之间发生变化时,会引发 TextChanged 事件。

页面不会在文本更改后立即回发,但会在文本框失去焦点时回发。

于 2013-11-07T14:57:46.627 回答
1

只有当您的文本框失去焦点时才会触发' OnTextChanged' 事件。asp:TextBox

于 2013-11-07T15:05:22.167 回答