我有一个带有imageButton的Asp.net(Ver4)网页,用于通过图像按钮点击事件后面的代码将表单数据提交到数据库。在后面的代码我使用response.redirect将它们移动到感谢页面,它是代码隐藏例程中的最后一行。 由于DB有点慢,有时我想禁用click事件,直到页面被重定向。我试图用jquery做这个。我已经能够禁用该按钮并使其显示为禁用,但后面的代码完全没有触发。
这是我正在使用的JQuery
function test() {
$("#ImageButton1").attr("disabled", "disabled").css('opacity',' 0.5');
}
这是按钮的
的aspx代码<div class="button">
<asp:ImageButton ID="ImageButton1" runat="server" Height="28px"
OnClientClick="test();"
onclick="ImageButton1_Click"
ImageUrl="media/finishbutton.jpg"
style="margin-top: 0px" Width="97px" />
</div>
答案 0 :(得分:2)
最简单的解决方案是在触发click事件后稍稍禁用该元素。例如:
function test() {
setTimeout(function () { $("#<%=ImageButton1.ClientID %>").attr("disabled", "disabled").css('opacity', ' 0.5'); }, 10);
}
答案 1 :(得分:1)
试试这个:
function test() {
$("#<%=ImageButton1.ClientID%>").attr("disabled", "disabled").css('opacity',' 0.5');
//$("#ImageButton1").css('opacity', ' 0.5');
}
和aspx
<div class="button">
<asp:ImageButton ID="ImageButton1" runat="server" Height="28px" OnClientClick="javascript:test();"
onclick="ImageButton1_Click"
ImageUrl="media/finishbutton.jpg" style="margin-top: 0px" Width="97px" />
</div>
答案 2 :(得分:0)
尝试在return true;
功能
test()
答案 3 :(得分:0)
您可以添加beforeAsyncPostBack并禁用那里的按钮,如here所述,或者只是从点击处理程序返回true。此外,您可能希望使用clientID来禁用按钮,而不仅仅是元素ID,这是服务器理解的内容。