这是我的html按钮代码
<div class="form-group">
<label>Name</label>
<input type="text" class="form-control" name="name" />
<div class="help-block with-errors" style="font-size:12pt">Input Only Alphabet</div>
</div>
<input class="btn btn-primary" type="submit" value="SUBMIT" id="button1 style="height:50px; width:100px" />
这是我的jQuery
<script type="text/javascript">
$("#button1").click(function(){
if($("#name").val() == null)
alert("haha");
if($("#name").val() == [a-z])
alert("zzzz");
});
</script>
我的问题是我只能验证第一个条件。每次我尝试第二个条件它都不会工作。任何人都可以帮忙看看我的问题是什么?
答案 0 :(得分:3)
这是无效的语法 * :
if($("#name").val() == [a-z])
您可以使用正则表达式执行所需操作:
if($("#name").val().test(/^[a-z]$/))
附加^
和$
要求元素的值只是一个字符,之前和之后都没有。
其次,您的input
没有id
属性,因此jQuery将找不到$("#name")
的任何内容。为此,您的输入元素必须具有id="name"
:
<input type="text" class="form-control" name="name" id="name"/>
^^
<小时/> * 从技术上讲,它实际上是正确的语法,但对于完全不同的东西:它会查找变量 a 和 z ,减去它们,并且将结果用于单元素数组文字,这不会产生预期的结果。