web-dev-qa-db-fra.com

Comment obtenir une valeur de cellule dans JQGRID?

Comment obtenir une valeur de cellule dans JQGRID?

Si j'utilise la syntaxe suivante -

var ret = jQuery("#MyGrid").jqGrid('getRowData', id);
ret = ret.ProductId;

il renvoie le HTML suivant.

'input class="editable" name=" ProductId " id="0_ ProductId " style="width: 98%;" type="text"'

J'ai en fait besoin de la valeur de la cellule.

Merci. Faire devenir

14
dev

Si vous n'avez besoin que de la valeur d'une cellule déjà enregistrée, vous pouvez l'obtenir avec cela.

$('#myTable').jqGrid('getCell',row_id,'column_name');
27
HomeSlice

Si vous essayez d'obtenir la valeur d'une ligne lorsqu'il est édité, vous récupérerez le balisage (comme dans votre exemple), au lieu de la valeur réelle. Pour citer la Documentation JQGrid pour getRowdata :

N'utilisez pas cette méthode lorsque vous modifiez la ligne ou la cellule. Cela retournera le contenu de la cellule et non la valeur réelle de l'élément d'entrée.

La meilleure solution consiste à enregistrer vos données de ligne avant d'appeler getRowData, bien que sinon ce n'était pas une option, vous devrez analyser vous-même le marquage. Ce qui n'est en fait pas que difficile à faire en jQuery, mais reste une douleur.

4
Justin Ethier