从下拉列表中传递动态json对象值

时间:2014-09-25 08:00:16

标签: javascript jquery json

我将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中从下拉列表(ddlxField)传递字段值,它包含列表的所有字段名,并在推送'name'数组中的数据时将其传递给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出现未定义。 任何人都可以建议还有什么可以做或者哪里出错了?

1 个答案:

答案 0 :(得分:2)

使用value[xName]代替value.xName

[]语法需要string密钥,就像xName一样。