ajax提交返回boolean类型

function validateEnameExsit() {
var ename = $("#ename").val();
if($.trim(ename)=='') {
    $("#result").attr('color','#FF0000'); 
$("#result").html('用户名不能为空');
return false;
}else{
$.ajax({
url : "empManagerAction!validateEname.do",// 后台处理程序
type : "post",// 数据发送方式
dataType : "json",// 接受数据格式
data : "employeeForm.ename="+ename,// 要传递的数据
cache: false,//禁用缓存
// 回传函数
success : function(responsedata) {
if(responsedata=='0'){
    $("#result").attr('color','B3E6DF'); 
$("#result").html('恭喜!该用户名还未被注册!');
return true;
}else if(responsedata=='1'){
$("#result").attr('color','#FF0000');
$("#result").html('对不起!用户名已存在!');
return false;
}
}
});
}
}

 

解决方案很多,提供以下几个:
1 、在ajax方法外面定义临时遍历,接收boolean值也就是success中的值,这种方式需要同步才能接收到值
    因为ajax不会等这个方法运行完了才执行下面的代码的,当然可以用setTimeout延时下
2 、可以把你的值放在$.dada()的缓存中保存;如:$( "div" ).data( "temp" , true);alert($( "div" ).data( "temp" ));
3 、可以设置在属性中保存,然后取到。如果不想要了还可以删掉
$(this). attr ( "temp" , true);
var temp = false;
$.ajax({
     url  "empManagerAction!validateEname.do" ,// 后台处理程序
     type :  "post" ,// 数据发送方式
     dataType :  "json" ,// 接受数据格式
     data :  "employeeForm.ename=" +ename,// 要传递的数据
     cache: false,//禁用缓存
     // 回传函数
     success : function(responsedata) {
         if(responsedata== '0' ){
             $( "#result" ). attr ( 'color' , 'B3E6DF' ); 
             $( "#result" ).html( '恭喜!该用户名还未被注册!' );
             //return true;
             temp = true;//$( "#result" ). attr ( "temp" , true);
         }else if(responsedata== '1' ){
             $( "#result" ). attr ( 'color' , '#FF0000' );
             $( "#result" ).html( '对不起!用户名已存在!' );
             //return false;
             temp = false;//$( "#result" ). attr ( "temp" , false);
         }
     }
});
alert($( "#result" ). attr ( "temp" ));//这样就可以取值了

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在SSM,在前端JSP页面使用AJAX完成新增数据的步骤如下: 1.编写JSP页面,包含一个表单元素,用于输入新增数据。 2.编写AJAX代码,使用XMLHttpRequest对象与服务器进行通信,向服务器发送新增数据。 3.编写Controller层代码,接收并处理新增数据。 4.编写Service层代码,调用DAO层的方法,将新增数据插入到数据库。 5.根据Service层返回的结果,给出相应的提示信息。 以下是一个简单的示例代码: ``` <!-- JSP页面 --> <html> <head> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script> $(document).ready(function(){ // 提交表单时触发AJAX请求 $("#form").submit(function(event){ event.preventDefault(); // 阻止表单的默认提交行为 $.ajax({ url: "add", type: "POST", data: $("#form").serialize(), // 将表单数据序列化后发送 success: function(data){ if (data === "success") { alert("新增成功!"); } else { alert("新增失败!"); } } }); }); }); </script> </head> <body> <form id="form"> <input type="text" name="name" placeholder="姓名"> <input type="text" name="age" placeholder="年龄"> <button type="submit">新增</button> </form> </body> </html> <!-- Controller层代码 --> @Controller public class UserController { @Autowired private UserService userService; @RequestMapping(value = "/add", method = RequestMethod.POST) @ResponseBody public String addUser(User user) { boolean result = userService.addUser(user); if (result) { return "success"; } else { return "fail"; } } } <!-- Service层代码 --> @Service public class UserServiceImpl implements UserService { @Autowired private UserDao userDao; @Override public boolean addUser(User user) { int count = userDao.addUser(user); return count > 0; } } <!-- DAO层代码 --> @Mapper public interface UserDao { int addUser(User user); } <!-- 实体类代码 --> public class User { private Long id; private String name; private Integer age; // 省略getter和setter方法 } ``` 在上面的示例,当用户点击“新增”按钮时,会自动发送一个AJAX请求到Controller层的addUser方法,并将表单数据序列化后发送。Controller层接收到表单数据后,调用Service层的addUser方法,将新增数据插入到数据库。Service层返回操作结果,Controller层将结果以字符串形式返回给客户端。客户端根据服务器返回的结果,给出相应的提示信息。你可以根据实际需求修改代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值