65 votes

Le modèle masqué utilisant la liaison de données à la propriété image src ne fonctionne pas

Je ne peux pas voir ce qui ne va pas ici, mais l'image ne s'affiche pas à l'aide du modèle Knockout suivant:

 <script type="text/html" id="legend-template">       
    <div><input type="checkbox" data-bind="click : doSomething" ></input>
        <img width="16px" height="16px" data-bind="src: 'imagePath'" />          
        <span data-bind="text : label"> </span>
    </div>        
</script>
 

L'objet auquel cela est lié doit ressembler à ceci:

 tut.myObject= function (imagePath, label) {
    this.label = ko.observable(label);
    this.imagePath = ko.observable(imagePath || liveString + '/Content/images/marker.png');   
};

tut.myObject.prototype = {
    doSomething: function () { alert("do what?");
     }
};
 

Lorsque l'objet HTML est rendu, je vois le libellé et un clic sur la case à cocher appelle doSomething.

TIA.

163voto

web_bod Points 4055

Seuls quelques attributs peuvent être liés directement. essayez d’utiliser attr - cela vous permettra de définir n’importe quel attribut d’un élément.

 <img width="16px" height="16px" data-bind="attr:{src: imagePath}" />  
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X