Comment obtenir une ligne de détails, sans réellement en sélectionnant la ligne de la table dans sapui5
J'ai créé une table dans sapui5 dans lequel les données de remplissage du back-end qui est la Passerelle SAP. J'ai ajouté une colonne dans la table qui contient un lien. Chaque ligne a un lien. Si je clique sur un lien, une boîte de pop-up s'ouvre.
Je veux passer les détails des autres colonnes de la même ligne dont le lien est sélectionné dans la boîte de pop-up. Et pour obtenir les détails, j'ai besoin de l'indice de la ligne à laquelle je ne sais pas.
Comment faire ?
- En utilisant jQuery ou javascript. Un conseil: essayez de faire quelque chose par vous-même, je vous souhaitez obtenir une réponse 🙂
- J'ai essayé, mais a été en mesure d'obtenir les détails de colonne unique. Je ne suis pas en mesure d'obtenir la ligne de l'index.
- S'il vous plaît ajouter le sapui5 code que vous essayez maintenant et il sera beaucoup plus facile de l'aider
- essayer de construire un exemple d'utilisation de cette page: jsbin.com/openui5-HTML-templates/77/edit
- Êtes-vous à l'aide de la liaison de données pour renseigner les données à votre table? Si oui pouvait vous fournir des informations supplémentaires à votre Lien à l'aide de la CustomData attribut qui peut être consulté, dans une conférence de presse. Vous pouvez stocker l'ensemble de la ligne de l'objet en elle, et de lui fournir de la fenêtre contextuelle. Consultez la documentation pour un exemple: openui5.hana.ondemand.com/#docs/guide/CustomData.html
- n'est pas le rowObject=ce.getContext().getObject (), pourquoi ne pas définir le contexte de la popup au lieu
- Bien sûr! Cela sonne encore mieux pour moi depuis le passage le Contexte de la ligne a pour but de permettre l'accès ET les manipulations de l'objet dans le modèle de la boîte de Dialogue Contextuelle. Vous avez juste à vous assurer à passer le contexte de l'ensemble de la ligne de l'objet plutôt que de passer juste le Lien contexte de.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le
getSource()
etgetParent()
méthodes pour marcher jusqu'à la hiérarchie de contrôle comme ceci:De toute façon en fonction de la hiérarchie comme cela semble un peu fragile pour moi, aimerait voir plus bel exemple.
J'ai eu plus ou moins la même question mais avec RowRepeater contrôle au lieu de la Table. Jetez un oeil à la réponse Jasper_07 fourni à https://stackoverflow.com/a/21600210/3270057
Cela donnera à votre accès à l'actuel contexte de liaison des propriétés, ou de l'ensemble de l'objet
Espérons que cette aide!
Obtenir le modèle que vous avez lié à la table
var model=that.getView().getModel("ModelName");
var path = evt.getSource().getParent().getBindingContextPath();
var data=model.getProperty(path);
les données doivent être l'objet que vous avez lié à la ligne et contient toutes les valeurs que vous avez besoin.