刷新重复提交问题。
<asp:Button ID="Button1" OnClientClick="return true" runat="server" Text="Button" OnClick="Button1_Click" />
OnClientClick="return true"时disabled = true,没法执行OnClick="Button1_Click"后台问题
------解决方案--------------------
OnClientClick="return true"提交表单通过的同时disabled = true
你将按钮禁用,当然就提交不了,也就不会执行按钮的单击事件了。
------解决方案--------------------后台方法执行完再在后台禁用,或者做个等待效果。
------解决方案--------------------
提交后,Redirect一下就可以了。
------解决方案--------------------你在Button1_Click的事件中一开始就去disable!不要放在OnClientClick的JS函数中去执行这个!!!
------解决方案--------------------
<asp:Button ID="Button1" OnClientClick="return true" runat="server" Text="Button" OnClick="Button1_Click" />
OnClientClick="return true"时disabled = true,没法执行OnClick="Button1_Click"后台问题
OnClientClick="return true"提交表单通过的同时disabled = true
你将按钮禁用,当然就提交不了,也就不会执行按钮的单击事件了。
我是想知道有什么解决办法
提交后,Redirect一下就可以了。
这个效果不好,我想js那样提交禁用效果
那么你可一试试这样,
服务端,定义变量,protected string isSubmit = "true";
OnClientClick = "return <%= isSubmit%>"
提交之后,修改变量
isSubmit = "false";
------解决方案--------------------不行啊
怎么不行了。
------解决方案--------------------前台和后台的代码最好不要一起使用
------解决方案--------------------你可以在onclick事件的最后加上禁用的代码。这种最好吧
------解决方案--------------------行之有效的方法就是提交完毕立马转向列表页
也许你可以考虑 ajax 向后台提交数据,开始提交前,设置为不可用,在成功回调中,将按钮解锁
另外,你的后台应该有所判断,即便是数据重复提交了,那么应该以哪些字段为准做查重处理
------解决方案--------------------
在pageload中:btn_Pass.Attributes.Add("onclick", "this.value='提交中…';" + disableString());
/// <summary>
/// 返回禁用所有按钮的js代码
/// </summary>
/// <returns></returns>
private&nb