方法-submit提交表单出现问题!!!

问题描述

submit提交表单出现问题!!!
 var value = $('#testDept').val();   

if(value!=""){
    $.ajax({
        url:"deptIsExit",
        type:"post",
        data:{"deptValue":value},
        success:function(data){
            $('#message').html(data.result.message);
            if(data.result.isExit){
                return true;
            }
        }
    });
}else {
    $('#message').html("不能为空!");
    return false;
}

 }

function checkit(){
if(isExit()){
    return true;
}

return false;

 }

这个是个form表单,里面的onsubmit,ajax已经传递值,并且比较也正确,正常应该return true,方法就结束了,但是,往下执行了return false。导致我表单一直提交不了!!!这里本人确定值传递进去,并且比较完毕,返回的也是true!!但就是,方法没结束,怎么回事????调试结果是直接全部都执行了!没有跳过中间的return true!!!

里面改成了加上了同步标我现在要的示,true。还是不正确!!我现在要的效果是,根绝ajax返回的信号,确定表单是否提交!!但是现在,返回的是true也不提交!!哪里出了问题?????????????

解决方案

 var flag = false;//加标记位
var value = $('#testDept').val();
if(value!=""){
$.ajax({
url:"deptIsExit",
type:"post",
data:{"deptValue":value},
success:function(data){
$('#message').html(data.result.message);
if(data.result.isExit){
flag= true;//不然返回的是success的结果,不是整个函数的结果
}
}
});
}else {
$('#message').html("不能为空!");
}
return flag
}

解决方案二:

success中的return是那个匿名函数的返回,不是外侧主函数的返回!

解决方案三:

ajax要改为同步,并且不能再回调里面return 返回值,那个返回值不是isExit的返回值

 var rst=false;//////////////////

var value = $('#testDept').val();   

if(value!=""){
    $.ajax({
        url:"deptIsExit",
        type:"post",
        data:{"deptValue":value},
        success:function(data){
            $('#message').html(data.result.message);
            if(data.result.isExit){
                rst= true;//////////////////////////
            }
        }
    });
}else {
    $('#message').html("不能为空!");
   // return false;
}
return rst;//////////////////////////

解决方案四:

改为同步
async:false

时间: 2024-11-10 01:01:30

方法-submit提交表单出现问题!!!的相关文章

JS和jQuery使用submit方法无法提交表单的原因分析及解决办法_javascript技巧

昨天,在做一个表单异步提交内容的时候,遇到很奇怪的问题,submit()方法无法进行提交,每次提交都是把 当前给刷新了,网络抓包发现,每次都是 get方式去获取 当前页面,完全没有post 请求,想着以前 遇上这样的问题 都是因为 表单中 有 name 或者 id 这些命名跟submit 有冲突,但是检查了几次,始终没有发现 名字冲突,所以这个可能性被排除. 平常自己做触发按钮,基本不用a 标签,但是昨天不知道什么 问题,竟然用了 a 而且还给了 href 为空,由于这个a 的class 有多个

Nodejs下用submit提交表单提示cannot post错误的解决方法_node.js

<span style="font-size:18px;"><form action="/registOK" method="get"> <p>用户名:<input type="text" id="userName" name="userName"></p> <p>密码:<input type="pa

编程-Php不使用submit提交表单

问题描述 Php不使用submit提交表单 想在点开超链接的时候保存表单数据,不使用按钮.请问怎样实现? 解决方案 用form.submit()提交吧,写一个js方法,点击超链接后调用这个方法提交 解决方案二: php 多个submit提交表单 处理方法表单提交(submit)和Ajax提交为什么使用jquery 的submit()方法不能提交表单? 解决方案三: 楼上正解..............

jquery实现submit提交表单_jquery

使用jquery的submit()函数提交form表单时,总是无法提交表单.这个问题太诡异了,是因为form中提交表单的input的name属性为submit,把name改成其他的名称,就可以使用了. 表单可以提交之后,又出现了新的问题.由于基于dz开发,表单提交之后使用submitcheck()这个函数来检查表单是否提交,由jquery提交上来的表单始终无法验证通过.最后采用模拟点击提交按钮的方法来实现. 复制代码 代码如下: <!-- lang: js --> $('input#asubm

解决jquery submit()提交表单提示:f[s] is not a function_jquery

jquery submit()无法提交表单 报错:f[s] is not a function, js submit()无法提交表单 报错:document.getElementByIdx_x(...).submit is not a function 这2个错让人很无奈啊,语法没有任何错误,怎么能报错呢? 因为以前重来没有遇到过,这次是在改别人的代码,回头看了看代码,我靠原来有个按钮的name="submit",把它删掉就能正常提交表单了. 为什么呢?应该是一个type="

js和jq使用submit方法无法提交表单的快速解决方法_javascript技巧

昨天,在做一个表单异步提交内容的时候,遇到很奇怪的问题,submit()方法无法进行提交,每次提交都是把 当前给刷新了,网络抓包发现,每次都是 get方式去获取 当前页面,完全没有post 请求,想着以前 遇上这样的问题 都是因为 表单中 有 name 或者 id 这些命名跟submit 有冲突,但是检查了几次,始终没有发现 名字冲突,所以这个可能性被排除. 平常自己做触发按钮,基本不用a 标签,但是昨天不知道什么 问题,竟然用了 a 而且还给了 href 为空,由于这个a 的class 有多个

php 多个submit提交表单 处理方法_php技巧

test.php 复制代码 代码如下: <?php $test = $_POST[ 'test ']; echo '12 '; echo $test; echo $_POST[ 'submit1 ']; echo $_POST[ 'submit2 ']; if (isset($_POST[ 'submit1 ']) && $_POST[ 'submit1 '] == 'submit1 ') { echo 'ok1 '; } if (isset($_POST[ 'submit2 '])

form.submit()不能提交表单的错误原因及解决方法_javascript技巧

直接上代码把: <div id="register"> <h4>会员注册</h4> <div class="formdiv"> <form method="post" action="register.php?action=register" name="register" id="registerForm"> <dl&g

php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别_php技巧

应该这样用if(isset($_POST['submit'])) { } 提交表单时 if($_POST[submit])与 if(isset($_POST[submit])) 的区别 第一种方法会出现一个warning,第二种相对更严谨. 还有就是POST的键名最好加上单引号,这样效率稍微高点(大概3-4倍). 恩 差不多那个意思,如果设置了这个变量则返回true PHP中if(isset($_POST['Submit']))是什么意思 isset -- 检测变量是否设置 判断post过来的数