用JS清除文本框

时间:2013-10-28 19:37:10

标签: c# javascript asp.net

这是我的问题我创建了一个文本框来检查美国手机号码以及JS中仅检查号码的功能。问题是在输入错误的数字后我想清除文本框,JS中的函数不会让我。

这是我的代码:

function NumbersOnly(sender, args) {
    var text = sender.get_value() + args.get_keyCharacter();
    if (!text.match('^[0-9]+$') && text != '\b' && text != '(' && text != ')' && text != '-') {
        args.set_cancel(true);
    }
}

                                     细胞:

            </td>
            <td style="text-align: left">
            <telerik:RadTextBox ID="txtPhone" runat="server" MaxLength="25" Width="200px"><ClientEvents OnKeyPress="NumbersOnly"></ClientEvents></telerik:RadTextBox>                
            <asp:RegularExpressionValidator runat="server" ID="revPhone"
                            ControlToValidate="txtPhone"
                            Display="None"
                            ValidationExpression="^(\([0-9]{3}\) |[0-9]{3}-)[0-9]{3}-[0-9]{4}$"
                            ValidationGroup="validateEditUser"
                            EnableClientScript="false"
                            ErrorMessage="- Please enter a valid phone number:(ex.) <b>(xxx-xxx-xxxx)</b></br>" />
        </tr>

由于

2 个答案:

答案 0 :(得分:0)

只需设置this.value=''即可在函数中清除其值。

或在您的情况下sender.set_value('')也应该正常工作

答案 1 :(得分:0)

如果您有权访问jQuery,则可以使用$('#txtPhone').val('');清除文本框。这也有助于解决任何跨浏览器的不一致问题。

假设实际输入元素的ID是 txtPhone ,而不是webforms生成的错位ID。如果我的内存服务正确,则RadTextBox控件具有 CssClass 属性,该属性允许您为渲染的输入字段设置CSS类,您也可以使用它。