js eval()方法处理json字符串

php代码段:

public function demo(){
    $sql = "select count(0) from table where id=" . $id;
    if(!$mysql->getResult($sql)){
        echo json_encode(array(‘code‘ => 2));
        exit;
    }
    echo json_encode(array(‘code‘ => 1, ‘mes‘ => ‘您确定要修改个tableZ信息吗?‘));
    exit;
}

jQuery代码段:

 $("#info_btn").click(function(){
    $.get(‘/dmeo?_t=‘ + Math.random(), function(data){    
        var jsonData=eval("("+ data +")");        //这里eval()处理json字符串为什么要用两层括号呢?
        if(jsonData.code==1) {
            if(confirm(jsonData.mes)){
                $("#Table_info").show();
                $("#Form_info").hide();
            }
        }
        if(jsonData.code==2) {
            $("#Table_info").show();
            $("Form_info").hide();
        }
    });
});
时间: 2024-10-02 02:21:19

js eval()方法处理json字符串的相关文章

javaScript中eval()方法转换json对象

原文:javaScript中eval()方法转换json对象 <script language="javascript"> var user = '{name:"张三",age:23,'+ 'address:{city:"青岛",zip:"266071"},'+ 'email:"[email protected]",'+ 'showInfo:function(){'+ 'document.wri

javaScript中用eval()方法转换json对象

var u = eval('('+user+')'); 1.对于服务器返回的JSON字符串,如果jQuery异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,方式不是太麻烦,就是将该字符串放于eval()中执行一次.这种方式也适合以普通javascipt方式获取json对象,以下举例说明: var u = eval('('+user+')'); 为什么要 eval这里要添加('('+user+')') "呢? 原因在于:eval本身的问题. 由于json是以"{}&

JS对象转化为JSON字符串

js方法: JSON.stringify 把一个对象转换成json字符串 JSON.parse 把一个json字符串解析成对象. JQ方法: 用jquery的方法 $.parseJSON(jsonString) 在官网下载一个json2.js 然json.parse()方法 这个方法firefox chrome是直接支持的 ie需要引入json2.js

js jquery前台解析json字符串

一.js解析json字符串 eval()和JSON.parse() 对于服务器返回的JSON字符串,如果jquery异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,就是将该字符串放于eval()中执行一次.这种方式也适合以普通javascipt方式获取json对象,以下举例说明: var dataObj=eval("("+data+")");//转换为json对象 为什么eval这里要添加 "("+data+")&

JS数组转成json字符串的注意事项

在js中常常会将一个数组转成json字符串发送给后端. 这时候在定义数组数据结构的时候需要格外注意,意味json中是有集合和对象的区别的. 集合的定义是[];对象的的定义是{}. 这时候,在创建数组时需使用不同的方式.比如创建一个集合数组: var bizhi_info_modify_arr = []; 再如创建一个对象数组: bizhi_info_modify_arr[i] = {}; bizhi_info_modify_arr[i]["id"] =$("#bizhi_li

使用javascript的eval函数解析json字符串,提示“not avalible”怎么办?

按照最简单的形式,可以用下面这样的 JSON 表示"名称 / 值对": var jsonString = '{ "firstName": "Brett" } '; 如果这样的简单json字符串使用eval函数是不能解析(在chrome浏览器37.0中测试)的 var a = eval(jsonString); 执行这个语句是系统会提示:“not avalible”; 这样的问题怎么办呢,我们实际中确实需要传输多个参数的值. 解决的办法是将最简单的

js和java 下json字符串的使用和转化

1.在js中将对象转为字符串/json字符串 给初学者的一个提醒,JavaScript是弱类型的语言,是不存在json字符串这种类型的,json字符串也是字符串. 为什么要把对象转化为字符串呢? 因为在前后台的数据交互中,js中的对象肯定是不能被后台的语言直接获取的,我们需要把js的对象转化为json格式的字符串,然后再发给后台的java. json的格式为 {"term1Name":term1Value,"term2Name":term2Name}通过下面的代码就

使用原生ajax处理json字符串

我们使用得还是wamp,如果不知道环境怎么搭建,请在我的日志里面找,此处不在累赘. 什么是json?JSON的全称是 Javascript Object Notation(javascript对象表示法),是基于javascript对象字面量,如果单从眼睛看,JSON里的数据是被保存在花括号里面-- {},如果在用途上面进一步分析,JSON是一种数据交换格式.JSON内部以 名称:值这种格式排列,如下面的json1,就是一个json对象. var json1={"name":"

js中eval() 方法的使用以及一些特殊的使用方式

1.eval方法只能在非严格模式中进行使用,在use strict中是不允许使用这个方法的. 2.eval函数接收一个参数s,如果s不是字符串,则直接返回s.否则执行s语句.如果s语句执行结果是一个值,则返回此值,否则返回undefined. 需要特别注意的是对象声明语法"{}"并不能返回一个值,需要用括号括起来才会返回值.如下: var code1='"a" + 2'; //表达式 var code2='{a:2}'; //语句 alert(eval(code1)