小编Chr*_*son的帖子

将javascript对象或数组转换为json以获取ajax数据

所以我正在创建一个包含元素信息的数组.我遍历所有元素并保存索引.出于某种原因,我无法将此数组转换为json对象!

这是我的数组循环:

var display = Array();
$('.thread_child').each(function(index, value){
   display[index]="none";
   if($(this).is(":visible")){
      display[index]="block";
   }
});
Run Code Online (Sandbox Code Playgroud)

我尝试通过以下方式将其转换为JSON对象:

data = JSON.stringify(display);
Run Code Online (Sandbox Code Playgroud)

它似乎没有发送正确的JSON格式!

如果我像这样手动编码,它可以工作并发送信息:

data = {"0":"none","1":"block","2":"none","3":"block","4":"block","5":"block","6":"block","7":"block","8":"block","9":"block","10":"block","11":"block","12":"block","13":"block","14":"block","15":"block","16":"block","17":"block","18":"block","19":"block"};
Run Code Online (Sandbox Code Playgroud)

当我对JSON.stringify对象发出警报时,它看起来与手动编码的对象相同.但它不起作用.

我疯了试图解决这个问题!我在这里错过了什么?发送此信息以获得手动编码格式的最佳方法是什么?

我使用这个ajax方法发送数据:

$.ajax({
        dataType: "json",
        data:data,
        url: "myfile.php",
        cache: false,
        method: 'GET',
        success: function(rsp) {
            alert(JSON.stringify(rsp));
        var Content = rsp;
        var Template = render('tsk_lst');
        var HTML = Template({ Content : Content });
        $( "#task_lists" ).html( HTML );
        }
    });
Run Code Online (Sandbox Code Playgroud)

使用GET方法,因为我正在显示信息(不更新或插入).只将显示信息发送到我的php文件.


结束解决方案


var display = {};
$('.thread_child').each(function(index, value){
   display[index]="none";
   if($(this).is(":visible")){
      display[index]="block";
   }
});

$.ajax({
        dataType: "json",
        data: display, …
Run Code Online (Sandbox Code Playgroud)

javascript arrays json stringify

32
推荐指数
2
解决办法
21万
查看次数

标签 统计

arrays ×1

javascript ×1

json ×1

stringify ×1