web-dev-qa-db-fra.com

knockout - HTML href

J'ai une boucle foreach qui passe par un tableau (filesObservableArray). Le tableau a une clé/valeur avec la clé: URLPath. Lorsque je lie le tableau dans le HTML, je voudrais définir la valeur 'href =' avec l'URLPath.

Je sais que cette partie est un échec, mais conceptuellement, pouvez-vous voir ce que j'essaie de faire?

href = "<span data-bind = 'text: URLPath'>"

Ou peut-être que je peux utiliser un 'databind = "click: someCode (url)"' et dans la fonction someCode, ouvrir le lien? L'URL correspond à un fichier de document (par exemple, .doc) ou à un fichier image.

Pourboires appréciés. Merci!

<tbody data-bind="foreach: $root.filesObservableArray">
                    <tr id="tradeRow">
                        <td><a href="<span data-bind='text: URLPath'></span>">Open file</a></td>
                    </tr>
                </tbody>
20
nanonerd

Je ne sais pas ce que vous voulez réaliser avec la plage dans le href mais avec la liaison attr vous pouvez définir très bien le href (ou tout autre) attribut:

<tbody data-bind="foreach: $root.filesObservableArray">
   <tr id="tradeRow">
       <td><a data-bind="attr: { href: URLPath }">Open file</a></td>
   </tr>
</tbody>
40
nemesv

Avez-vous envisagé d'utiliser éventuellement les liaisons attr.

http://knockoutjs.com/documentation/attr-binding.html

7