J'essaie d'utiliser knockout js dans mon projet alors j'ai essayé le simple exemple Hello World mais je ne pouvais pas le faire fonctionner. J'ai créé un nouveau projet MVC4 et il suffit de copier faire un simple ci-dessous liaison est mon codeASP.NET MVC4 et Knockout js
<script src="~/Scripts/knockout-2.1.0.js" type="text/javascript"></script>
<script type="text/javascript">
// Here's my data model
var viewModel = function (first, last) {
this.firstName = ko.observable(first);
this.lastName = ko.observable(last);
//this.fullName = ko.computed(function() {
// Knockout tracks dependencies automatically. It knows that fullName depends on firstName and lastName, because these get called when evaluating fullName.
//return this.firstName() + " " + this.lastName();
//}, this);
};
$(document).ready(function() {
ko.applyBindings(new viewModel("Planet", "Earth")); // This makes Knockout get to work
});
</script>
<div class="liveExample">
<p>First name: <input data-bind="value: firstName" /></p>
<p>Last name: <input data-bind="value: lastName" /></p>
@*<h2>Hello, <span data-bind='text: fullName'> </span>!</h2>*@
</div>
Fondamentalement, il affichera simplement la valeur du modèle sur une zone de texte. je l'ai déjà fait référence à la knockout.js dans mon projet, mais il ne fonctionne pas J'ai aussi ajouté les js knock-out dans mes BundleConfig.cs
bundles.Add(new ScriptBundle("~/bundles/knockout").Include("~/Scripts/knockout-2.1.0.js"));
Je ne marchait pas
Avez-vous essayé de mettre l'appel 'applyBindings' dans le document prêt? Il peut échouer si le code HTML n'existe pas encore. – Tyrsius
J'ai mis à jour le code et essayé d'appeler le document prêt mais il n'a toujours pas fonctionné. – reggieboyYEAH
Eh bien cela fonctionne dans ce [violon] (http://jsfiddle.net/9KM9F/), quelque chose d'autre sur votre page doit se tromper. Avez-vous des erreurs dans la console? – Tyrsius