以下の簡略化されたコード。サーバーにヒットすることがわかります。しかし、変更をUIに戻すためのものを取得できません。
.html:
<div id="LoginPage" data-title="LoginPage" data-role="page" data-theme="a">
<div data-role="content" class="minimalPaddingContent">
<div class="divDivider"></div>
<h3>REACH Energy Audit Login</h3>
<input type="text" placeholder="User Name" id="userName" data-bind="value: successOrFailureSw"/>
<input type="password" placeholder="Password" id="password"/>
<a href="#" data-role="button" id="LoginSubmit" style="width:150px;" class="centeredButton" data-bind="click: changeValue">Sign In</a>
<span data-bind="text: successOrFailureSw"></span>
</div>
.js:
var LoginViewModel = function (commonName, successOrFailureSw) {
var self = this;
self.commonName = ko.observable(commonName);
self.successOrFailureSw = ko.observable(successOrFailureSw);
self.changeValue = function(){
console.log("changed!");
self.successOrFailureSw = "new value!";
}
};
ko.applyBindings(new LoginViewModel("", "super fail"));
マッピングが .html b/c で正しいと確信しています。元の値はスーパー フェイルとしてレンダリングされます。「successOrFailureSw」にマップされるテキスト ボックスの値を変更すると、span タグで更新された値が取得されます。 、しかし、ログインボタンのクリック時に効果の変化が得られません。
私は非常に単純なものが欠けていることを知っているので、事前にお詫び申し上げます。
ありがとう!
ブライアン