C# 自定义属性在razor mvc中不起作用

C# 自定义属性在razor mvc中不起作用,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我想用下面的js代码验证每个输入 var inputs = document.querySelectorAll('input[data-filter]'); for (var i = 0; i < inputs.length; i++) { var input = inputs[i]; var state = { value: input.value, start: input.selectionStart, end: i

我想用下面的js代码验证每个输入

var inputs = document.querySelectorAll('input[data-filter]');

for (var i = 0; i < inputs.length; i++) {

    var input = inputs[i];
    var state = {
        value: input.value,
        start: input.selectionStart,
        end: input.selectionEnd,
        pattern: RegExp('^' + input.dataset.filter + '$')
    };

    input.addEventListener('input', function (event) {
        if (state.pattern.test(input.value)) {
            state.value = input.value;
        } else {
            input.value = state.value;
            input.setSelectionRange(state.start, state.end);
        }
    });

    input.addEventListener('keydown', function (event) {
        state.start = input.selectionStart;
        state.end = input.selectionEnd;
    });
}
原始正则表达式
^\+?(?:\d\s?{11,13}$
在给出错误时转义了反斜杠

$("#phone").on("focus", function (evt) {
    if(this.value.length < 11)
        alert("Invalid");

});
$(“#电话”)。打开(“焦点”,功能(evt){
如果(此.value.length<11)
警报(“无效”);
});

剃须刀不起作用。有什么问题吗???

它到底是怎么不起作用的?何时添加事件侦听器?它在$(document.ready)上吗;?你说“它与文本框完美结合”,那么它在哪里不起作用呢?
$("#phone").on("focus", function (evt) {
    if(this.value.length < 11)
        alert("Invalid");

});