Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML5文本字段的正则表达式模式_Javascript_Jquery_Html_Regex - Fatal编程技术网

Javascript HTML5文本字段的正则表达式模式

Javascript HTML5文本字段的正则表达式模式,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,我想用javascript为带有地址的html文本字段创建一个正则表达式模式。因此,我只希望用户输入[a-z,a-z,0-9]和这些符号[,#-.],我还希望防止用户发送空字符串和最大字符数小于100 这是html: 现在,仅当未选择其他时,此功能才起作用。否则它不会选择模式属性。但是,在jsfiddle上,完全相同的代码可以正常工作:但在浏览器中不能。这是pastebin中的代码: 谢谢HTML5为您提供了模式属性,允许您需要特定的模式。在这种情况下,您需要pattern=“[a-zA-Z0-

我想用javascript为带有地址的
html文本字段
创建一个正则表达式模式。因此,我只希望用户输入
[a-z,a-z,0-9]
和这些符号
[,#-.]
,我还希望防止用户发送空字符串和最大字符数小于100

这是html

现在,仅当未选择其他
时,此功能才起作用。否则它不会选择
模式
属性。但是,在jsfiddle上,完全相同的代码可以正常工作:但在浏览器中不能。这是pastebin中的代码:


谢谢

HTML5为您提供了
模式
属性,允许您需要特定的模式。在这种情况下,您需要
pattern=“[a-zA-Z0-9,#.-]+”

旧浏览器不支持这一点并不重要,因为您应该始终在服务器端进行验证。

$(文档)。就绪(函数(){

}))


这将起作用。

显示此任务的部分代码,人们将帮助您尝试一些东西,在此处发布,并解释哪些不起作用。这不是一个为我做的论坛。当您尝试并失败后,您将学习如何成功感谢您建议
模式
属性。但是,我不能让它在我的html中工作,就像我修改的问题一样。你使用的是什么浏览器?没关系,显然模式已经被锚定了。从开始和结束处删除
^
$
,它应该可以工作。即使删除
^
$
后,它仍然无法纠正它。您可以更新代码以显示您正在尝试的内容吗?JSFIDLE可能会有所帮助。
<input type="text" id="addy" maxlength="100"/>
 <input type="text" style="width:285px" placeholder="Enter A Precise Address" name="address0" id="address"
     pattern="[ a-zA-Z0-9,#.-]+" maxlength="100" title="Standard address notation only"/>
$('input').keyup(function() {
    var $th = $(this);
    $th.val( $th.val().replace(/[^a-zA-Z0-9,#.-]/g, function(str) { return ''; } ) );
});