Javascript 动态输入文本框id与正则表达式格式不匹配。显示未定义的

Javascript 动态输入文本框id与正则表达式格式不匹配。显示未定义的,javascript,jquery,match,Javascript,Jquery,Match,我有一个动态输入框,具有以下ID:点0、点1、点2等。我想确保这些输入框只匹配数字。所以我使用了下面的代码,但在控制台中它总是显示 TypeError:$(…)。val(…)未定义 所以我使用了下面的代码。我正在循环输入文本框 var result=document.getElementsByTagName(“输入”); 对于(var j=0;j

我有一个动态输入框,具有以下ID:点0、点1、点2等。我想确保这些输入框只匹配数字。所以我使用了下面的代码,但在控制台中它总是显示

TypeError:$(…)。val(…)未定义

所以我使用了下面的代码。我正在循环输入文本框

var result=document.getElementsByTagName(“输入”);
对于(var j=0;jvar regex='/^[A-Za-z!@#>您可能希望为
输入
元素使用更好的选择器。例如,您可以使用
输入[id^='points']
。这将查找以
点开始的
id
输入
元素

考虑以下示例:

var results = $("input[id^='points']");
var points = 'Enter a valid point.';
var regex = '/^[A-Za-z!@#></!?\$%\^\&*\)\(+=._-]+$/g';
results.each(function(i, el) {
  if ($(el).val().match(regex)) {
    console.log("Match on #" + $(el).attr("id"));
    $(el).next('span').html('');
    $("<span>", {
      class: "errTextboxClass"
    }).css("color", "#e03b3b;").html(points).insertAfter($(el));
    $(el).focus();
  }
});
这将匹配任何非数字。如果是我,我将阻止用户使用
.keypress()
在字段中输入非数字。例如:

$(函数(){
$(“输入[id^='points'])。按键(函数(e){
console.log(e.which);
如果(e.which!==46&(e.which<48 | e.which>57)){
e、 预防默认值();
}
});
});
标签{
宽度:80px;
显示:内联块;
}

第1点
第2点
名称

您可能希望为
输入
元素使用更好的选择器。例如,您可以使用
输入[id^='points']
。这将查找以
开头的
输入
元素

考虑以下示例:

var results = $("input[id^='points']");
var points = 'Enter a valid point.';
var regex = '/^[A-Za-z!@#></!?\$%\^\&*\)\(+=._-]+$/g';
results.each(function(i, el) {
  if ($(el).val().match(regex)) {
    console.log("Match on #" + $(el).attr("id"));
    $(el).next('span').html('');
    $("<span>", {
      class: "errTextboxClass"
    }).css("color", "#e03b3b;").html(points).insertAfter($(el));
    $(el).focus();
  }
});
这将匹配任何非数字。如果是我,我将阻止用户使用
.keypress()
在字段中输入非数字。例如:

$(函数(){
$(“输入[id^='points'])。按键(函数(e){
console.log(e.which);
如果(e.which!==46&(e.which<48 | e.which>57)){
e、 预防默认值();
}
});
});
标签{
宽度:80px;
显示:内联块;
}

第1点
第2点
名称

请向我们展示id为
点的html对象
,以及您在哪里定义的
j
我为您制作了一个片段。请使用相关的html和脚本进行更新。请查看我的更新问题。@Oops我仍然没有看到任何html,通过查看您的错误,它无法找到id为
点0的元素,它不是一个laravel问题选项。请编辑,向下滚动,然后单击上面的“编辑”片段并添加呈现的HTML和相关脚本(例如,您在其中定义了j)请向我们展示id为
的html对象,以及您在哪里定义的
j
我为您制作了一个片段。请使用相关的html和脚本进行更新。请查看我更新的问题。@Oops我仍然没有看到任何html,通过查看您的错误,它找不到id为
点0
的元素。这不是一个laravel问题。P租赁编辑,向下滚动,然后单击上面的编辑代码段,添加呈现的HTML和相关脚本(例如,在这里定义j)