————————————————前面比较啰嗦,具体方法在最后————————————
今天使用ajax,在增加用户,点击保存后,先不提交,先判断填写的信息,然后确定是否提交。
这是做的第一个练手的项目,之前跟着视频学习,学到项目视频被加密了,只有项目第一天的视频可以看,不过第一天收获也很大,项目刚开始时候使用S2SH怎么一步步整合。都是先看一遍,再看着写一遍,再自己写一遍。学到的挺多的。
尽管后面几天的项目的视频被加密了,但还好只是视频加密了,资料还可以看。所以这几天都是看着资料来慢慢摸索着做。
————————————————以上算是背景——————————————————
所以,今天的目标是使用ajax异步判断,由于讲知识点的人和讲项目的人不一样,从资料中看出,俩个人用的不太一样。而且,感觉项目还没有之前学知识点时候优化的好。现在是提交表单后再校验。而且这个项目老师特地把ajax的async属性值写为false,就成了非异步了。而在学知识点时,是用的异步方式,填完一个文本框,写的焦点失去方法,焦点失去后,使用ajax到action的方法中,方法会查询数据库判断进行校验,而且json使用框架自动封装。现在不是这样,把我搞糊涂了。不过今天的主题是表单验证后再提交,那个ajax等我搞明白了再写吧。
——————————————终于正文啦!!——————————————————————
正是由于以上的背景,今天我一看目标是使用ajax,就知道在前端jsp页面中,肯定会有变化。果然,加了两个function();一个是doVerify(),看名字就知道是校验的
<span style="font-size:18px;">var vResult = false;
//校验帐号唯一性
function doVerify(){
//获取帐号
alert("进入doVerfy()方法中");
var account = $("#account").val();
alert("account:"+account);
if(account != ""){
//校验
$.ajax({
url:"${basePath}nsfw/user_verifyAccount.action?time="+ new Date().getTime(),
data:{"user.account":account},
type:"POST",
async:false,//非异步
success:function(msg){
alert("msg:"+msg);
if("true"!=msg){
//说明帐号已经存在
alert("帐号已经存在,请使用其他帐号!");
//光标定为到输入框
$("#account").focus();
vResult &#