2011-10-20 113 views
2

我有一个通过Google Chrome访问的ASP.NET应用程序。在一个特定的页面上,我得到了一个带有OnTextChanged事件的asp:TextBox,该事件重新计算页面上的一些其他字段。我还得到了一个带有OnClick事件的asp:LinkBut​​ton,它将更改保存到数据库中。ASP.NET Textbox TextChanged和Button OnClick事件交互?

我正面临着用户通过点击保存按钮离开文本框的问题。该按钮在TextChanged事件之前触发,所以更改不会在保存中捕获。我通过在保存方法开始时复制TextChanged逻辑来解决这个问题。在我进行这些更改之前进行了一些测试,并且一切正常。

但是现在我的测试仪正面临不同的问题。当他更改文本字段并单击保存按钮时,OnTextChanged事件触发以更新页面上的其他值,但保存按钮的OnClick事件根本不会触发。他必须再次单击保存按钮才能触发OnClick事件。我在我的机器上测试了相同的功能,它对我来说仍然工作得很好。他和我在相同的数据库中查看完全相同的页面。我让我的测试人员清除了他的缓存等。唯一的区别是我的Chrome版本是“14.0.835.202米”,而他的只是“14.0.835.202”。

Chrome和ASP.NET有什么已知的问题,事件触发可能是非确定性的或什么?任何人有任何其他想法,为什么这可能会发生?谢谢你的时间!

回答

1

我相信这是一个已知的问题。

一种选择是当用户在文本框中输入时禁用按钮(客户端),并在TextChanged事件完成后启用它。

另一种选择是删除AutoPostBack="true"并使用AJAX代替。

+0

我们决定删除文本更改事件并改为计算按钮。 – GenuineSmile29

+1

优秀...这意味着你要标记我的答案;) –