事件与确认丢失后回发提出其他控制

时间:2012-06-25 15:04:43

标签: asp.net events updatepanel postback confirm

我有这个场景

具有AutoPostBack = true的TextBox和用于管理文本更改的服务器端代码     

带服务器端设置确认的按钮和要管理的代码。     btnSend.Attributes.Add(“onClick”,“return confirm('确认消息')”);     ....     

一切都在UpdatePanel内部

当用户在TextBox上书写时,如果没有离开文本框焦点,单击按钮,出现确认,并在inputTextAnswer_TextChanged后面引发并执行。然后页面处理了PostBack,因此如果用户在确认时单击“确定”,则不执行任何操作。用户需要再次单击才能真正执行按钮代码。

有没有办法运行inputTextAnswer_TextChanged代码(应首先执行),然后是按钮代码。重要提示:并非总是应该一个接一个地执行,只需用户填写文本框字段然后单击按钮

1 个答案:

答案 0 :(得分:1)

好的,如果someoane有同样的问题,我的解决方案。而不是保留与返回按钮相关联的确认,而只是通过javascript手动进行回发。然后执行文本框更改事件,当用户单击“确定”时,我们强制回发并执行按钮代码。

服务器端的这段代码

btnSend.Attributes.Add("onClick", "confirmSend();");

这是关于aspx的

<script>
function confirmSend() {
    var agree = confirm('confirm message');
    if (agree) {
         __doPostBack('btnSend', '');
   }
  }
</script>