2013-09-26 1 views
1

J'utilise le menu déroulant kendo sur ma page Web. C'est ma fonction de script Java.Comment obtenir des données de réponse ajax à une variable lors de la liaison des données à la liste déroulante de kendo?

 function BindNonEventDownList(_propertyId, _url, _textField, _valueField) { 
      $(_propertyId).kendoDropDownList({ 
       optionLabel: '<%= Resources.ResourceiChain.Select %>', 
       dataTextField: _textField, 
       dataValueField: _valueField, 
       dataSource: { 
        type: "json", 
        serverFiltering: true, 
        transport: { 
         read: _url 
        }, 
        schema: { 
         data: "Data", 
         total: "Count" 

        } 
       } 
      }); 

     } 

Ceci est ma réponse.

 {"Data":[],"Count":0} 

Je veux convertir ce nombre en variable. Comment puis-je le faire?

Répondre

0

J'ai trouvé la réponse ...... D'abord initialisé la source de données. Ensuite, en utilisant data.Length vous pouvez obtenir la longueur des données ..

 function BindNonEventDownList(_propertyId, _url, _textField, _valueField) { 

     var dataSource = new kendo.data.DataSource({ 
       transport: { 
         read: _url 
        }, 
        schema: { 
         data: "Data", 
         total: "Count" 

        } 
      }); 

      dataSource.fetch(function(){ 
       var data = this.data(); 
       console.log("data:"+data.length); 
      }); 


      $(_propertyId).kendoDropDownList({ 
       optionLabel: '<%= Resources.ResourceiChain.Select %>', 
       dataTextField: _textField, 
       dataValueField: _valueField, 
       dataSource: dataSource 
      }); 

     } 
0

Vous pouvez utiliser la méthode total de la source de données:

var dropdown = $(_propertyId).data("kendoDropDownList"); 
var count = dropdown.dataSource.total(); 

font cependant que les données ont été reçues lorsque vous appelez la méthode total. Sinon, il renverra 0.

+0

Je veux obtenir compter à l'intérieur de cette fonction BindNonEventDownList (_propertyId, _url, _textField, _valueField) {} ​​ – Rukz

+0

Vous ne pouvez pas. Vous avez besoin de la réponse du serveur à recevoir. –

Questions connexes