2

I'm using easyautocomplete. I get data from an ajax request. I then filter it and create a new object which easyauotocomplete support. Finally, I set it to options data but it shows the following error in the console:

Property 'drenajs' does not exist in EasyAutocomplete options API.

MeloGIS.getAllFeature=function(){
    var url= 'url which gives me json data';
    httpService.doAjax(url,'GET',null,null,function(response){
        var json=response;
        var dataJSON = JSON.parse(response);
        var data = [];
        var requestData = new Array();

        for(var i in dataJSON.features) {
              var item = dataJSON.features[i];
              var attributes= item.attributes;
              var geometry=item.geometry;

                  data.push({ 
                  "name" : attributes.name,
                  "collector" : attributes.collector                    
              });

          }

         requestData.drenajs=[];
         requestData.drenajs.push(data);


        var parentStringify=JSON.stringify(requestData);
        MeloGIS.autoComplete(requestData,"basics");

  },
  function(error){
     return;
  });
  }
  MeloGIS.autoComplete=function(jsonData,idInput){
     var options = {
              data : jsonData,

              categories: [{
                  listLocation: "drenajs",
                  maxNumberOfElements: 4,
                  header: "--DRENAJLARIN SIYAHISI--"
              }, {
                  listLocation: "pumps",
                  maxNumberOfElements: 4,
                  header: "--NASOSLARIN SIYAHISI--"
              }],

              getValue: function(element) {
                  return element.name;
              },

              template: {
                  type: "description",
                  fields: {
                      description: "collector"
                  }
              },

              list: {
                  maxNumberOfElements: 8,
                  match: {
                      enabled: true
                  },
                  sort: {
                      enabled: true
                  }
              },

              theme: "square"

      };

      $("#"+idInput).easyAutocomplete(jsonData);
  } 

But when I set a string like that it works fine. What did I do wrong ?

                    {
                          "drenajs": [
                              {"name": "drenaj1", "region": "Abseron rayonu"},
                              {"name": "Salam qaqa ", "region": "Nerimanov rayonu","adi":"ssss"},
                              {"name": "neynirsen", "region": "Nerimanov rayonu"},
                              {"name": "salamatcikodur", "region": "Nerimanov rayonu"},
                              {"name": "uc get", "region": "Nerimanov rayonu"},
                              {"name": "Rasul Rzayev", "region": "Nesimi rayonu"}
                          ],
                          "pumps": [
                              {"name": "AAA", "region": "Nesimi rayonu"},
                              {"name": "Salam America", "region": "Xetai rayonu"},
                              {"name": "Test", "region": "Xirdalan rayonu"}
                          ]
                      }

Thanks in advance.

Oliver
  • 11,857
  • 2
  • 36
  • 42
Resul Rzaeeff
  • 448
  • 4
  • 14
  • 30

0 Answers0