Передать переменную методу amCharts.loadfile?


0 принят

AmCharts.loadFileявляется методом AJAX, предоставляемым плагином dataLoader, который выполняет запрос GET. Как указано в документации , первым параметром является URL-адрес вашей конечной точки, поэтому вам нужно передать действительный URL-адрес в качестве первого параметра.

Поскольку ваша конечная точка требует POST для получения данных, вам лучше использовать свой собственный вызов AJAX вместо использования метода loadFile. Например:

function setDataSet(dataset) {
  $.ajax({
    type: "POST",
    url: '/Home/checkPriority',
    data:{
      item_name: dataset
    },
    dataType: "json",
    success: function(data) {
      chart.dataProvider = data; 
      /* or if you need to set each element individually like in your makeChart call:
      chart.dataProvider = [{
        "Priority Level": "Low",
        "cost": data[0],
        "color": "#FF0F00"
      }, {
        "Priority Level": "Medium",
        "cost": data[1],
        "color": "#FF6600"
      }, {
        "Priority Level": "High",
        "cost": data[2],
        "color": "#FF9E01"
      }, {
        "Priority Level": "Very High",
        "cost": data[3],
        "color": "#04D215"
      }];
      */
      chart.validateData();
    },
    error: OnErrorCallPri
  });
}
JavaScript, amcharts,

javascript,amcharts,

0

Ответов: 1


0 принят

AmCharts.loadFileявляется методом AJAX, предоставляемым плагином dataLoader, который выполняет запрос GET. Как указано в документации , первым параметром является URL-адрес вашей конечной точки, поэтому вам нужно передать действительный URL-адрес в качестве первого параметра.

Поскольку ваша конечная точка требует POST для получения данных, вам лучше использовать свой собственный вызов AJAX вместо использования метода loadFile. Например:

function setDataSet(dataset) {
  $.ajax({
    type: "POST",
    url: '/Home/checkPriority',
    data:{
      item_name: dataset
    },
    dataType: "json",
    success: function(data) {
      chart.dataProvider = data; 
      /* or if you need to set each element individually like in your makeChart call:
      chart.dataProvider = [{
        "Priority Level": "Low",
        "cost": data[0],
        "color": "#FF0F00"
      }, {
        "Priority Level": "Medium",
        "cost": data[1],
        "color": "#FF6600"
      }, {
        "Priority Level": "High",
        "cost": data[2],
        "color": "#FF9E01"
      }, {
        "Priority Level": "Very High",
        "cost": data[3],
        "color": "#04D215"
      }];
      */
      chart.validateData();
    },
    error: OnErrorCallPri
  });
}
JavaScript, amcharts,
Похожие вопросы