30go

应用场景:  在前端有个ajax请求到后端后,需要返回多个变量的值,在这里使用的是Json格式作为值传递,使用eval函数来解析Json格式。

     

     要传递的值data:

     var data = " {"key1":"value1","key2":"value2","key3":"value3"} ";

     解析的结果:

     var json = eval("(" + data+ ")");

     var value1 = json.key1;

     var value2 = json.key2;

     var value3 = json.key3;

具体在ajax中的应用如下,接收返回的多个值 



function save() {   if($("#saleOrderForm").valid()){
    var dform = $("#saleOrderForm").serialize();
    $.post(ctx
+ "/saleOrder/orderSave",     dform,     function(data){
      var json = eval("(" + data + ")");       var result = json.result;       var id = json.id;       var soStatus = json.soStatus;       if (result == "success") {         //jAlert(\'message\', \'操作成功.\', \'提示\');         closeWindow(\'popupWin\');         //如果状态由打开修改为关闭,则不跳转到明细栏目         if(soStatus == 1) {           window.location.href=ctx+\'/saleOrder/show\';         } else {           window.location.href=ctx+\'/saleOrderDetail/saleOrderDetailView?id=\' + id;         }       } else {         jAlert(\'message\', result,\'<facc:i18n value="系统提示" key="JSPCOMMON-sys_aerlt" />\');       }       }, "html");   } }
 

 

以下是后端拼接Json格式的字符串:

注意Json格式在java中时如果要输出的内容带双引号,需要使用转义字符/

   result = "{\"result\":\"success\",\"id\":\"" + id 
  + "\",\"soStatus\":\"" +saleOrder.getSoStatus()+"\"}";

 

分类:

技术点:

相关文章: