ajax返回参数判断时不相等的问题,eval()

2 篇文章 0 订阅
1 篇文章 0 订阅

今天在写代码的时候发现一个小问题,ajax请求后台返回“SUCCESS”到前台时,前台判断时为false,即msg == “SUCCESS” 返回false,代码如下:

后台Java代码

@RequestMapping(value="save_info")
    @ResponseBody
    public String modifyInfo(HttpServletRequest request,ModelMap modelMap) {
        String mString = "";
        try {
          ... ...
            int num = expertorsServices.updateExpertors(expertors);
            if (num == 1) 
                mString = "SUCCESS";//修改成功返回SUCCESS
            else
                mString = "FAIL";//修改失败,返回FAIL
                    
        } catch (Exception e) {
            e.printStackTrace();
            mString = "FAIL";
        }
      //  System.out.println(mString);
        return mString;
    }

前台ajax请求

              var zname = $("#zname").val();
        	  var zsex = $("#zsex[name='zsex']:checked").val();
        	  var zdanwname = $("#zdanwname").val();
        	  var ztelphone = $("#ztelphone").val();
        	  var zhiwei = $("#zhiwei").val();
        	  var zhichen = $("#zhichen").val();
        	  $.ajax({
        			type:"post",
        			dataType:"text",
        			data:{"zname":zname,
        				"zsex":zsex,
        				"zdanwname":zdanwname,
        				"ztelphone":ztelphone,
        				"zhiwei":zhiwei,
        				"zhichen":zhichen
        			},
        			url:"save_info.dx",
        			success:function(msg){
        				if(msg == "SUCCESS"){//注意这个地方的返回值为false
        				 layer.alert('修改成功!',{
        		               title: '提示框',				
        					   icon:1,			   		
        					  });
        				}else{
        					layer.alert('修改失败!',{
         		               title: '提示框',				
         					   icon:1,			   		
         					  });
        				}
        			},
        			error:function(){
        				layer.msg(msg,{icon: 6,time:1000});
        			}
        			
        		});

没有找到原因,最终请教同事,在js代码注释的那行判断条件修改为

eval(msg) == "SUCCESS"   问题解决,记录一下,避免下次跳坑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值