在我的Java代码中,我有一个名为colorList的JSONArray对象,它包含一个颜色列表。它看起来像这样: [" Red"," Yellow"," Blue"]
如何将此值传递给jquery变量?
我的jquery应该是这样的:
var hooks = {
processOptions: [function(plot,options) {
options.colors = ["Red", "Yellow", "Blue"];
}]
};
答案 0 :(得分: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.
答案 1 :(得分:0)
在JSON2文档中结帐JSON.stringify()
和JSON.parse()
<强>语法:强>
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);
}
答案 2 :(得分:0)
看起来你想做这样的事情:
设置初始对象:
var hooks = {
processOptions: []
};
创建一个我们将迟到的函数,它返回一个新函数,用于设置传递给它的对象的colors
键:
function createFunction(data) {
return function (plot, options) {
options.colors = data;
}
}
从服务器获取颜色数组数据,使用该数据创建一个新函数,并将其推送到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中看到,当调用该函数时,它会将数组记录到控制台。