【发布时间】:2014-02-25 05:47:36
【问题描述】:
Google 充满了这类问题,但我想我的问题有点不同。
不同之处在于我在这里使用了masked input 我包括jquery.maskedinput-1.2.2.js 和jquery-1.7.2.min.js 来使用masked inputs。屏蔽代码是
$(document).ready(
function () {
$("#txtPhoneNo").mask("?(999) 999-9999");
});
但它没有验证输入的长度,所以我为此写了javascript 并使用了“CustomValidator”,如下所示。
function isPhoneNumberValid(sender, args) {alert("l");
if (args.value.length < 2)
args.isValid = false;
}
alert("l"); 本身会告诉你,我只是想看看这个js function 是否会触发。
textbox 和 CustomValidator 的代码如下。
<asp:TextBox ID="txtPhoneNo" runat="server" CssClass="textbox3" size="60" Width="350px"
TabIndex="4" ClientIDMode="Static"></asp:TextBox>
<span style="font-size: 12px;">(000-000-0000)</span>
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="Phone number is not valid"
ClientValidationFunction="isPhoneNumberValid" Font-Size="9pt" ForeColor="Red" ControlToValidate="txtPhoneNo"></asp:CustomValidator>
注意
这里在textboxClientIDMode="Static"被使用,这可能是个问题。
问题
问题是我的js function 根本没有触发。如果文本长度小于 2 但不显示,则必须显示警报,而是进行回发。
谁能帮帮我。 谢谢
【问题讨论】:
-
你错过了文本框中函数
isPhoneNumberValid的参数 -
您是否也注意到了
value和isValid的大小写? -
这就是我之前使用
alert()的原因 -
我的意思是在将
value替换为Value和isValid替换为IsValid后进行检查
标签: javascript jquery asp.net customvalidator