js 提交页面数据时,用ajax验证,但ajax没验证完成,页面js数据已经提交,这个怎么弄?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 提交页面数据时,用ajax验证,但ajax没验证完成,页面js数据已经提交,这个怎么弄?相关的知识,希望对你有一定的参考价值。
ajax 效率比 js 执行的效率慢 !
// 使用 jquery 来完成 ajax 操作,引用 jquery.min.js// 其中,把提交事件写到 success:function 中就可以了
// 如果需要放在 $.ajax() 外面,则需要定义全局变量,另外,需要设置 async:false,这个属性指的是,执行完 $.ajax() 中的所有内容之后,再往下继续执行 if(yes)
$(function()
// 设置验证不通过
var yes = false;
$.ajax(
type: "POST", contentType: "application/json;charset=utf-8",
url: url + params, cache: false, async: false, dataType: "json",
success: function (result)
if(验证通过)
// $("#FormID").submit();
yes = true;
);
if(yes)
$("#FormID").submit();
) 参考技术A 可尝试如下:
1、ajax使用同步方式,ajax返回前js会一直处于等待状态
2、ajax使用异步,ajax返回后再处理js的数据,提交或者不提交
3、ajax验证时同步提交数据,验证ok同步处理数据 参考技术B 采用同步方式 ajax里面有个参数可以设置同步或异步,默认是异步 参考技术C 把提交放ajax回调函数里 参考技术D 可以贴一下代码吗,你是不是把提交事件写在验证外面了?
js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)
为了避免发送数据中有特殊字符,发送时用 encodeURIComponent 编码
(其实这个 if中是直接通过浏览器下载文件的方法,else是向后台传数据的方法)
struts后台Action处理接收到的数据,经过转换后生产一个文件,写回到前台的方法
接收到数据后首先 url解码
然后经过处理后,生成文件写回前台下载:
知识点包括如何获取项目中的某个目录的真实路径、生成临时文件、
上图最后部分是 对要返回到前台下载的 文件 名称 的防止中文乱码处理,以及 struts如何通过 假跳转页面的方式实现 前台浏览器文件下载。
以上是关于js 提交页面数据时,用ajax验证,但ajax没验证完成,页面js数据已经提交,这个怎么弄?的主要内容,如果未能解决你的问题,请参考以下文章
如何验证表单数据,然后通过 AJAX 发送,然后在同一页面上显示提交的结果
java web开发,关于ajax提交验证通过后 window.open无法加载页面的问题
js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)