页面按预期工作,禁用按钮并显示我的加载指示器,但从不调用OnClick事件。我对Javascript相对缺乏经验,我似乎无法找到答案,为什么这不起作用。
我希望一旦发生Disable()方法并返回true,它将调用OnClick方法,这将导致回发并自动重新启用按钮。
也许我会犯这个错误,感谢你的帮助。
<%@ Register TagPrefix="ComponentArt" Namespace="ComponentArt.Web.UI" Assembly="ComponentArt.Web.UI" %>
<%@ Control Language="c#" Inherits="MyControl"
Codebehind="ThisControl.ascx.cs"%>
<div class="Form" style="width: 100%">
<img id="imgLoading" src="images/GridImages/spinner.gif" style="display:none" alt="loading..." />
<ol>
<li>
<asp:Button ID="FirstButton" CssClass="btn" runat="server" Text="First Press Me"
OnClick="First_Click" OnClientClick="this.value='Please Wait...'; needToConfirm=false; return Disable(); "/>
<span>
<asp:Button ID="SecondButton" CssClass="btn" runat="server" Text="Second Press Me"
OnClick="Second_Click" OnClientClick="this.value='Please Wait...'; needToConfirm=false; return Disable(); "/>
</span>
</li>
</ol>
<script type="text/javascript">
function Disable() {
document.getElementById('<%=FirstButton.ClientID %>').disabled = true;
document.getElementById('<%=SecondButton.ClientID %>').disabled = true;
setTimeout('UpdateImg()', 0);
return true;
}
function UpdateImg() {
$('#imgLoading').show();
var img = document.getElementById('imgLoading');
img.src = 'images/GridImages/spinner.gif';
}
</script>
</div>
答案 0 :(得分:2)