Javascript 使用正则表达式验证输入字段不工作
我被要求验证我们的输入字段。通过这种方式,我限制了您可以在输入字段中填写的字符。每当我添加一些数据时,我的输入字段将递增,并且我使用一个id表示所有数据 它在第一排起作用,但在其余的排不起作用。有什么建议可以解决吗Javascript 使用正则表达式验证输入字段不工作,javascript,jquery,regex,Javascript,Jquery,Regex,我被要求验证我们的输入字段。通过这种方式,我限制了您可以在输入字段中填写的字符。每当我添加一些数据时,我的输入字段将递增,并且我使用一个id表示所有数据 它在第一排起作用,但在其余的排不起作用。有什么建议可以解决吗 echo"" . "<form action=maintenance.php method=POST>" . "<tr>" . "<td><inp
echo""
. "<form action=maintenance.php method=POST>"
. "<tr>"
. "<td><input class='textbox' type=text id='name' name=name value='" . $record['name'] . "'> </td>"
. "<td><input class='textbox' size=50 id='url' type=url name=url value='" . $record['url'] . "'></td>"
. "<td><textarea class=textbox rows=2 cols=50 wrap=physical id=desc name=desc>" . strip_tags($record['description']) . "</textarea></td>"
. "<input type=hidden name=hidden value='" . $record['name'] . "'>"
. "<td><button class='btn-style-icons shrink' type=submit name=update><img src=icons/update.png alt=Update></button></td>"
. "<td><button class='btn-style-icons shrink' type=submit name=delete><img src=icons/delete.png alt=Delete></button></td>"
. "</tr>"
. "</form>";
}
echo""
. "</table>"
. "<table>"
. "<form action=maintenance.php method=POST>"
. "<tr>"
. "<td><input class='textbox' id='name' type=text name=iname></td>"
. "<td><input class='textbox' id='url' size= 50 url=url name=iurl></td>"
. "<td><textarea class=textbox id=desc rows=2 cols=50 name=idesc></textarea></td>"
. "<td><button class='btn-style-icons shrink' type=submit name=add id=add><img src=icons/add.png alt=Add></button></td>"
. "</tr>"
. "</form>"
. "</table>";
每个页面的HTML ID必须是唯一的。如果希望通过同一标识符选择多个元素,则应使用类。请记住,每个html元素可以有多个类。因此,对于您的示例,您可能需要一个类似于
class='textbox name'
的class属性。然后,您可以使用jquery$(.name)
选择名称类的所有内容
您可以在此处找到有关类别与id的更多信息:
此外,如果您只是试图限制输入中的字符数,javascript解决方案可能会对您造成过度伤害,因为您只需在输入上设置一个
maxlength
属性。HTML ID每页必须是唯一的。如果希望通过同一标识符选择多个元素,则应使用类。请记住,每个html元素可以有多个类。因此,对于您的示例,您可能需要一个类似于class='textbox name'
的class属性。然后,您可以使用jquery$(.name)
选择名称类的所有内容
您可以在此处找到有关类别与id的更多信息:
此外,如果您只是试图限制输入中的字符数,javascript解决方案可能会对您来说有些过分,因为您可以在输入上设置maxlength
属性。好的解决方案
ID必须是唯一的,因此不要使用ID=“name”或ID=“url”
,而是使用class=“name”
和class=“url”
。之后,您可以将选择器更改为.name
和.url
,它将正常工作
黑客解决方案
如果出于某种原因,您希望使HTML无效并复制ID,则可以利用jQuery并在选择器前插入一个空格。它将返回多个元素
$(' #name')
$(' #url')
除非你头上顶着一把枪,有人要求你在不改变HTML的情况下调试他的代码,否则不要使用它。使用类,这就是它们存在的原因。很好的解决方案
ID必须是唯一的,因此不要使用ID=“name”或ID=“url”
,而是使用class=“name”
和class=“url”
。之后,您可以将选择器更改为.name
和.url
,它将正常工作
黑客解决方案
如果出于某种原因,您希望使HTML无效并复制ID,则可以利用jQuery并在选择器前插入一个空格。它将返回多个元素
$(' #name')
$(' #url')
除非你头上顶着一把枪,有人要求你在不改变HTML的情况下调试他的代码,否则不要使用它。使用类,这就是它们存在的原因。ID需要唯一,请使用类。如果出于某种原因您想要无效代码,只需在选择的开头添加一个空格:$(“#name”)
@Karl AndréGagnon OMG您是个救生员。请回答,这样我就可以接受了:DUse native regex语法:var regex=/^[a-zA-Z0-9\b\t]+$/代码>-您的正则表达式无法正常工作,因为您没有逃过反斜杠。欢迎使用StackOverflow!请看,如果共识是“不,他们不应该”。ID需要唯一,请使用类。如果出于某种原因您想要无效代码,只需在选择的开头添加一个空格:$(“#name”)
@Karl AndréGagnon OMG您是个救生员。请回答,这样我就可以接受了:DUse native regex语法:var regex=/^[a-zA-Z0-9\b\t]+$/代码>-您的正则表达式无法正常工作,因为您没有逃过反斜杠。欢迎使用StackOverflow!请看,这里的共识是“不,他们不应该”。谢谢:)课堂对我不起作用。所以我需要黑客解决方案:)谢谢:)这门课不适合我。所以我需要黑客解决方案:)