2015-09-18 94 views
0

在我的Java代码中,我有一个名为colorList的JSONArray对象,它包含一系列颜色。它看起来像这样: [“红色”,“黄色”,“蓝色”]JSONArray对象jquery

如何将此值传递给一个jQuery变量?

我的jQuery应该是这样的:

var hooks = { 
    processOptions: [function(plot,options) { 
      options.colors = ["Red", "Yellow", "Blue"]; 
    }] 
}; 
+0

什么是'jQuery变量'? – Rayon

+0

您可以对服务器进行ajax调用,并返回颜色的JSON数组作为响应,并将其用于客户端JS代码中。 – M4ver1k

回答

0

您可以尝试.get Ajax调用可以接收一个JSON。

$.get('YourServlet', {varTest: 'Test'}, function (response) { 

      var jSON = JSON.parse(response); });// varTest if you want to pass some values once you have the JSON you can get the inside data. 
0

结帐JSON.stringify()JSON.parse() JSON2文档

句法:

myData = JSON.parse(text); // from json string to js object 

var myJSONText = JSON.stringify(myObject, replacer); // js object to json string 

代码段:

使用下面的代码之后AJAX回传功能。

var myData = JSON.parse(text); 

String val = ''; 

for (var i = 0; i < options.colors.length; i++){ 
    val = myData.options.colors[i] + ","; 
} 

if (val .indexOf(",") != -1){ 
    val = val .substring(0, val .length-1); 
} 
0

它看起来像你想要做这样的事情:

设置您的初始目标:

var hooks = { 
    processOptions: [] 
}; 

创建,我们将后期使用返回一个新的功能,设置的功能

function createFunction(data) { 
    return function (plot, options) { 
    options.colors = data; 
    } 
} 

抓斗:这是传递给它的对象colors关键从服务器的颜色阵列数据,利用这些数据创建一个新的功能,并将其推到hooks.processOptions阵列:

$.get(endpoint).then(function (data) { 

    // var data = ["Red", "Yellow", "Blue"]; 
    var options = {}; 
    var plot = null; 

    hooks.processOptions.push(createFunction(data)); 

    // you can then call that function with the arguments you need 
    hooks.processOptions[0](plot, options); 
}); 

您可以在此DEMO看到,当函数被调用它记录的阵列控制台。