javascript确认asp.net按钮从不提交?

rod*_*ick 2 javascript asp.net form-submit

我有一个常规的asp:按钮.我在.Net 3.5工作.我已经尝试使用OnClientClick属性向按钮添加js确认以及添加代码隐藏,结果是相同的.无论用户在确认弹出窗口中点击什么,表单都不会提交?

BtnDeleteSelected.Attributes.Add("onclick","return confirm('你确定要删除?');");

出现确认对话框,如果我选择"确定",它仍然不提交..任何想法?谢谢.

Jos*_*ola 5

那是因为你不应该在所有情况下都回来.如果您查看页面的来源并查找按钮标记,您可能会看到这个......

onclick="return confirm('Ok?'); __doPostback();"
Run Code Online (Sandbox Code Playgroud)

在某些情况下,ASP.NET框架会自动插入__doPostback调用.由于无论结果如何都会立即返回confirm,因此回发永远不会触发.最终的解决方案是不设置onclick属性,而是使用不显眼的方法.但是,如果有迫切的理由通过onclick在服务器端控制它,你可以使用一个简单的if语句,只有当他们按"取消"时才返回...

string js = "if(!confirm('Are you sure you want to delete?')) return false;";
BtnDeleteSelected.Attributes.Add("onclick", js);
Run Code Online (Sandbox Code Playgroud)