1.用button提交为什么提交不了,我调用了submit()方法,但是为什么没有进入action里面的页面
2.直接在表单上加 onsubmit="return check();",用jq写的时候这个check()函数应该写在哪
3.关于上面疑问的细节我用注释说明了,搞了大半天还是没有弄清楚,麻烦大神指导指导。不胜感激。
4.check()函数放在$(function(){})外面的时候,当本来该执行里面的return false时,为什么还是提交并进入action里面的页面了呢?
<form id="register" name="register" method="get" action="https://www.baidu.com">
<input type="text" name="userName" placeholder="用户名" autocomplete="off"/>
<input type="submit" name="submit" value="注册"/>
<input type="button" name="show" value="点击"/>
</form>
<script type="text/javascript">
$(function(){
var name = '';
$("input[name='userName']").blur(function(){
if($(this).val()){
name = $(this).val();
}
});
//第一种:button模拟提交 这种为什么提交不了
/*$("input[name='show']").click(function(){
if(name){
$("form#register").submit();
}else{
alert("无法提交");
}
})*/
//第二种: 表单加上onsubmit="return check();"验证
//这个函数写在里面,访问上面的变量,但是直接外部onclick绑定没有进函数
function check(){
alert("ok"); //直接未进入函数
if($("input[name='userName']").val()!=null){
//alert("ok");
return true;
}else{
//alert("false");
return false;
}
}
})
//这个函数写在外面,外部onclick绑定可以进入该函数,但是无法访问上面已有过控制的变量
/*function check(){
//alert("ok"); //进入函数
if($("input[name='userName']").val()!=null){
//alert("ok"); //有输入时,进入
return true;
}else{
//alert("false"); //无输入,为什么没有进入
return false;
}
}*/