我将来自 json 的字段值 (Sales, ProductName) 存储在名为“data[]”和“name[]”的数组中。 下面是工作正常的代码。
function onCompletedCallback(response, eventArgs) {
var chartlist = eval("(" + response.get_responseData() + ")");
var markup = " ";
//Display the raw JSON response
markup += response.get_responseData();
// alert(markup);
var jsonData=jQuery.parseJSON(markup);
// alert(jsonData);
//declaring arrays
var name = [];
var data = [];
$.each(jsonData.d.results, function (index, value) {
data.push(value.Sales);
name.push(value.ProductName);
});
}
现在我想在我的 UI 中从 dropdown(ddlxField) 传递字段值,它保存列表的所有字段名并将其传递给 json 对象,同时将数据推送到“名称”数组中。 现在我选择“ProductName”表单下拉列表,即 xName=ProductName
var xName = document.getElementById("ddlxField").value;
$.each(jsonData.d.results, function (index, value) {
data.push(value.Sales);
name.push(value.xName); // xname value= ProductName
});
但是执行后,xName 是未定义的。 谁能建议还可以做什么或哪里出了问题?
最佳答案
使用 value[xName]
而不是 value.xName
。
[]
语法需要一个 string
作为键,就像 xName
一样。
关于javascript - 从下拉列表中传递动态 json 对象值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26033441/