Ich bin neu im Knockout und versuche zu bekommen, was eine einfache Aufgabe sein sollte. Ich arbeite an einer MVC4 .NET App mit der Absicht, einen Datumsbereich-Picker zu binden, um Ajax-Anforderungen für die Aktualisierung von Highchart-Diagrammdaten zu stellen. Ich benutze Dan Grossmans Bootstrap-Themen-Datumsauswahl und es war bisher großartig (https://github.com/dangrossman/bootstrap-daterangepicker).Verwenden von Knockout.js zum Binden der Bootstrap-Datumsbereichsauswahl und Analysieren des Bereichsinhalts
Das grundlegende Ziel ist es, die Zeitspanne zu beobachten, die dieser jQuery Date Ranger-Picker aktualisiert, und dann knockout zu verwenden, um diesen Wert an einen anderen Teil der App für die Ajax-Anfrage zu übergeben.
Ich habe alles versucht, was ich online finden kann. ValueUpdate: Ändern Sie auf die Spannweite zu einigen jQuery in Knockout, um das gleiche Ziel zu erreichen, eine Subskriptionsfunktion zu verwenden, um den Wert der Spanne vor und nach dem zu beobachten Datumsauswahl wird verwendet. Anscheinend verwendet dies den Event-Handler jQuery .change(), der nur für Eingaben, Selects und Textareas .. not spans gut ist.
Hier ist die Geige von dem, was ich bisher: http://jsfiddle.net/eyygK/9/
jede Hilfe und Eingang zu schätzen wissen.
@JaredFarrish Ich war mir nicht sicher, ob ich eine benutzerdefinierte Bindung erstellen musste, weil ich nur versuche, Änderungen an dieser einzelnen Spanne zu beobachten. – jmkr
Es gibt kein Änderungsereignis für einen Bereich, da ein Bereichswiederholungsupdate normalerweise in JavaScript ausgeführt wird. In diesem Fall sollten Sie Ihre viewModel-Eigenschaft aktualisieren, um den Bereich zu aktualisieren, nicht umgekehrt. Die Ko-Bindungen sind normalerweise für direkte Benutzereingabe in der Benutzeroberfläche (Klicken, Tippen, Senden). – guzart