我想实现:
一个普通的按钮(不是在DATALIST 或是 DATAGRID中),在执行其按下事件的代码前,弹出一个对话框让用户确认是否继续执行。
我是这样写的:
Page_Load()中,
bDelAll.Attributes.Add( "onClick ", "if(confirm (\ "确定要删除所有记事信息吗?\ ")==true){MakeRequest( 'note_delAll.aspx ');GoPage();return true;}else{return false;} ; ");
------------------------------------
bDelAll是一个图形按钮;
我在上面的代码里,意图当对话框点确定的时候,运行2个JS函数:
1、MakeRequest( 'note_delAll.aspx ');
2、GoPage();
实际上运行时只运行了第一个,为什么?
我是不得以才用MakeRequest()这个自定义的JS函数去隐性的执行 note_delAll.aspx 以达到删除所有记录的效果。
如何可以让点击对话框的确认后运行CS文件中定义的函数呢?
------解决方案--------------------------------------------------------
MakeRequest( 'note_delAll.aspx ');
如何写的
------解决方案--------------------------------------------------------
在bDelAll.Attributes.Add( "onClick ", "if(confirm (\ "确定要删除所有记事信息吗?\ ")==true){MakeRequest( 'note_delAll.aspx ');GoPage();return true;}else{return false;} ; ");
这里
把GoPage()用window.location = 'note_list.aspx ';替换掉
------解决方案--------------------------------------------------------
会不会跟你MakeRequest( 'note_delAll.aspx ');中返回false有关? 你可以把两个函数合并成一个函数。
------解决方案--------------------------------------------------------
onClientClick
------解决方案--------------------------------------------------------
页面上放个 <input type= 'button value= '确定 ' onclick= " if(confirm( '确定要删除所有记事信息吗 ')){MakeRequest( 'note_delAll.aspx ');GoPage();Fomr1.btnDelAll.click()} "> 另外bDelAll隐藏掉 <asp:Button id= "bDelAll " style= "display:none "........
------解决方案--------------------------------------------------------
因为你在MakeRequest的代码太多了,并且还用异步方式连接url很多地方都可以导致 返回一个true给按惯.