【发布时间】:2013-07-13 22:01:51
【问题描述】:
我在 ASP.Net 网络表单中有以下按钮:
<asp:Button id="btn_submit" text="Submit (Click only Once)" OnClick="process_form" runat="server" />
在页面代码中,我使用了以下函数 禁用多个提交(这在 ASP.Net 2.0 下运行良好)...
private sub prevent_multiple_submits()
dim sb as StringBuilder
sb = New StringBuilder()
sb.Append( "this.value = 'Please wait...';this.disabled = true;" )
sb.Append( Page.ClientScript.GetPostBackEventReference( btn_submit, String.Empty ) )
btn_submit.Attributes.Add( "onclick", sb.ToString() )
end sub
当页面在 ASP.Net 2.0 下运行时,呈现的 HTML 如下(工作正常)...
<input type="submit" name="btn_submit" value="Submit (Click only Once)" onclick="this.value = 'Please wait...';this.disabled = true;__doPostBack('btn_submit','');" id="btn_submit" />
当页面在 ASP.Net 4.0 下运行时,呈现的 HTML 如下:
<input type="submit" name="btn_submit" value="Submit (Click only Once)" onclick="this.value = 'Please wait...';this.disabled = true;__doPostBack('btn_submit','');" language="javascript" id="btn_submit" />
...由于某种原因,该按钮永远不会显示为禁用...(就像在 ASP.Net 2.0 下一样)...
表单仍然提交并且一切正常——但是按钮在被点击后从未出现过?!
还有其他人处理过这种行为吗? .. 如果是这样,您是否找到了解决方案而无需更改 web.config、使用 JQuery 等。
顺便说一句,
我确实找到了以下参考资料;但在 ASP.Net 4.0 下对我来说还没有任何效果。
ASP.NET, javascript: silly annoying apostrophe problem
HTMLEncode/HTMLDecode and the apostrophe ASP.net
我想问题应该是如何将未转义的 javascript 代码添加到 asp.net 按钮?
提前致谢
【问题讨论】:
标签: javascript asp.net button onclick