我有一个带有UseSubmitBehavior =“false”的asp.net按钮,如下所示:
<asp:Button ID="btnLogin" runat="server" UseSubmitBehavior="false" OnClientClick="if (!LoginPopup()) {return false;}" CssClass="login-button" Text="<%$ Resources: HRGELoggedOutMaster, Login %>"> </asp:Button>
和js的功能如下:
function LoginPopup() {
var username = $("#<%= UsernameTextBox.ClientID %>").val();
var password = $("#<%= PasswordTextBox.ClientID %>").val();
var remMe;
if ($('#<%= chkRememberMe.ClientID %>').attr('checked') == "checked") {
remMe = true;
}
else {
remMe = false;
}
if (username != '' && password != '')
CallPageMethod("LoginPopup", ["username", username, "password", password, "rememberMe", remMe], LoginPopupSucceeded, LoginPopupFailed);
else
alert("Invalid username/password");
return false;
}
我在这样的文本框的按键上调用它:
$("#<%=this.UsernameTextBox.ClientID%>").keypress(function (event) {
fireButtonClick($("#<%=this.btnLogin.ClientID%>"), event);
});
function fireButtonClick(ctrl, event) {
if (event.which || event.keyCode) {
if ((event.which == 13) || (event.keyCode == 13)) {
ctrl.click();
return false;
}
我想在输入无效时停止回发,但它不起作用。请建议我如何停止回发
答案 0 :(得分:1)
我不知道你的问题是否与我的问题相同。 当我将UseSubmitBehavior = false放入页面进行回发时,在updatepanel内部。
所以我在面板中放了一个默认按钮,例如:
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" defaultbutton="btnDisableEnter">
<ContentTemplate>
<asp:Button ID="btnDisableEnter" runat="server" Text="fake button" OnClientClick="return false;" style="display:none;"/>
</ContentTemplate></asp:UpdatePanel>