0

我正在开发一个使用 jQuery UI 以及其他一些库的项目。我正在尝试进行输入验证(在 onChange 事件之后)并且它无法正常工作。我有几个 ASP.NET MVC 文本框,我尝试按类和其他一些方式访问它们,但它们不起作用。

<%=Html.TextBox("Name1", Model.Customer.FirstName, new { style = "width:200px", @class="alphaOnly", onchange = "InputValidation();"  })%>

这段代码确实有效,但我必须多次重复最后 3 行(~20 行),这不好。关于问题可能是什么的任何想法?

function InputValidation() {
var className = $('.alphaOnly').attr('class');
var regexAlpha = new RegExp('[^[a-zA-Z]+$'); 
var value = $("#Name1").val();
value = value.replace(regexAlpha, '');           
$("#Name1").val(value);

我尝试了几种方法来动态获取 ID 并使用“alphaOnly”类遍历所有控件,但仍然无济于事。

4

1 回答 1

1

您不必获取ID,您已经可以选择关闭课程。而且您不必循环,因为选择器将返回所有匹配的项目,您可以将函数应用于结果,例如:

function InputValidation(){
    var regexAlpha = new RegExp('[^[a-zA-Z]+$');
    $(".alphaOnly").each(function(){
        this.value = this.value.replace(regexAlpha, '');
    });
}
于 2013-03-22T19:35:10.067 回答