我在asp.net的前台网页test.aspx里这样定义:
<asp:button id="btnSet" runat="server" test="aaa"></asp:button>
我在asp.net的后台test.aspx.vb代码里这样写:
me.RegisterClientScriptBlock("mm","<script>if(confirm('确定吗?')){document.getElementById('btnSet').click();}else{window.close();};</script>")问题是:
当弹出确认框后,我点击'确认'按钮,没有执行document.getElementById('btnSet').click();
点击‘取消’按钮,有执行window.close();}
但我如果把document.getElementById('btnSet').click();换成alert('test');就会执行

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/4600/4600204.xml?temp=.8942377
      

  2.   

    看看生成的html,就知道是什么问题了
      

  3.   

    回发问题,须在Page_Load中定义触发
    this.Button1.Attributes["onClick"]= "document.getElementById('btnSet').click();return confirm('确定吗?'));";
      

  4.   

    RegisterClientScriptBlock改为RegisterStartupScript试试
      

  5.   

    szwebnet(赤水流星) 说的没错,在后台实现选择弹出框用按钮的Attributes属性。而且要在load事件中写。在其他情况下,需要把脚本块从后台发送到前台 可以用RegisterClientScriptBlock/RegisterStartupScript