Question

Je suis assez nouveau sur Kendo UI et j'apprécierais que quelqu'un puisse me donner un conseil.J'ai besoin d'obtenir une valeur de colonne spécifique lorsque ma ligne de grille est sélectionnée.Jusqu'à présent, je peux obtenir les valeurs de toutes les colonnes de la ligne sélectionnée :

$("#grid").kendoGrid({
...
change:onChange,
columns: [{
            field: "Number",                
            title: 'Number',

        }, {
            field: "Title",
            title: "Title",               
        }]
});

Fonction onChange :

function onChange(arg) {
        var selected = $.map(this.select(), function (item) {
            return $(item).text();
        });

        alert(selected);
    }

Je dois prendre la valeur sélectionnée de Number colonne.Quelque chose comme $(item[name='Number']).text();Je sais que je pourrais analyser la chaîne mais je suppose qu'il existe un autre moyen.

Merci beaucoup

Était-ce utile?

La solution

Vous devriez utiliser le dataItem méthode de la grille Kendo UI pour récupérer l'élément de données réel de la ligne que vous avez sélectionnée - référence.Ensuite, vous pouvez récupérer la valeur dont vous avez besoin par nom de propriété.

function onChange(e) {
  var selected = this.select()[0],
      item = this.dataItem(selected);

  alert(item.Number);
}

Autres conseils

Si vous avez plusieurs sélection et souhaitez collecter une première colonne de toutes les lignes sélectionnées.Utilisez le code suivant

      var allSelected = "";          
      var selectedRows = this.select();
        for (i = 0; i < selectedRows.length ; i++) {
            allSelected = allSelected + ", " + this.dataItem(selectedRows[i]).task_number;
        }

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top