我有一個簡短的問題。我使用的淘汰賽JS和有這種觀點和視圖模型:如何在Knockout JS中更改視圖
var LoginViewModel = function() {
var self = this;
self.userName = ko.observable();
self.userPassword = ko.observable();
self.signin = function() {
data = ko.toJSON(self);
$.ajax({
url: "/signin",
type: "post",
data: ko.toJSON(self),
contentType: "application/json",
success: function (data, textStatus, xhr) {
alert(xhr.status);
// If status == 200(OK) change view
},
error: function (jqXHR, textStatus, errorThrown) {
alert("failure");
}
});
}
}
ko.applyBindings(new LoginViewModel());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.0/knockout-min.js"></script>
<div class="container">
<div class="col-md-4 col-md-offset-4" data-bind="visible: isVisible">
<div class="panel panel-default">
<div class="panel-heading" style="text-align: center;">
<strong class="">SEHA</strong>
</div>
<div class="panel-body">
<form class="form-horizontal">
<div class="form-group">
<label for="username" class="col-sm-3 control-label">Name</label>
<div class="col-sm-9">
<input class="form-control" required="" type="text" data-bind="value: userName">
</div>
</div>
<div class="form-group">
<label for="password" class="col-sm-3 control-label">Password</label>
<div class="col-sm-9">
<input class="form-control" required="" type="password" data-bind="value: userPassword">
</div>
</div>
<div class="form-group last">
<div class="col-sm-offset-3 col-sm-9">
<button class="btn btn-success btn-sm" data-bind="click: signin">Sign in</button>
</div>
</div>
</form>
</div>
<div class="panel-footer">
~
</div>
</div>
</div>
</div>
現在我要改變「視圖」如果在用戶登錄我怎樣才能實現這個目標? 我也想爲下一個視圖選擇一個新的視圖模型。我會怎麼做?
這是我第一次使用javascript/knockout,所以請善待。
把你的代碼**的**問題,不要鏈接到外部資源 – Amit
邁克Ç已經這樣做了,現在我想:D – danielDotNet
可能的dupe http://stackoverflow.com/questions/503093/how-can-i-make-a-redirect-page-using-jquery – JohnnyHK