ajax异步验证用户名,jquery选择表单对象失败,不知是何原因,请大神指点,谢谢!表单如下:
js中代码如下:
在页面输入名字失去焦点后没有任何反应,异步失败
追加说明:form表单有很多个input,其它两个ajax异步正常,唯独后来加的这个怎么也没反应
你改成点击事件试试,看看有没有反应。
选择器错了,dom并没有id,但你选择器加了[id]属性,当然无法选择,你那个选择器是有id属性并且name为username
去掉[id]属性选择器,改成下面的选择器就行了
$('input[name="username"]')
$('input[id][name="username"]')是选择器有id属性并且name为username的input元素。
你的input元素没有id属性,自然不会被选择。
应该是去掉[id],或者给input元素加上id属性
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title> 页面名称 </title>
</head>
<body>
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.11.1/jquery.min.js"></script>
<input required type="text" class="input-text" value="" placeholder="4~18位" name="username" />
<script type="text/javascript">
$(function(){
$('input[name="username"]').blur(function(event){
alert("blur事件触发了");
});
});
</script>
</body>
</html>
把这个直接换成.input-text 试一试 或者给input框加个ID #id试试
我试了下正常是没任何问题
<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#aa").focus(function(){
$("#aa").css("background-color","#FFFFCC");
});
$("#aa").blur(function(){
$("#aa").css("background-color","#D6D6FF");
});
});
</script>
</head>
<body>
Enter your name: <input required type="text" class="input-text" value="" placeholder="4~18位"
name="username"
id="aa" name="username" />
<p>请在上面的输入域中点击,使其获得焦点,然后在输入域外面点击,使其失去焦点。</p>
</body>
</html>