Javascript 在knockout JS中绑定复杂模型
我有以下JSON复杂对象Javascript 在knockout JS中绑定复杂模型,javascript,jquery,knockout.js,knockout-2.0,Javascript,Jquery,Knockout.js,Knockout 2.0,我有以下JSON复杂对象 {"User": { "$id":"2", "Id":0, "FirstName":null, "LastName":null, "Email":null, "EmailConfirmed":false, "PasswordHash":null, } } 如何在knockout js中绑定此对象。到目前为止,我已经使用类似这样的东西将属性与输入字段绑定 <input required cla
{"User":
{
"$id":"2",
"Id":0,
"FirstName":null,
"LastName":null,
"Email":null,
"EmailConfirmed":false,
"PasswordHash":null,
}
}
如何在knockout js中绑定此对象。到目前为止,我已经使用类似这样的东西将属性与输入字段绑定
<input required class="form-control" data-bind="value: User.FirstName" type="text" />
当我通过JS调用提交时
var jsonData = ko.toJSON(userInfo);
对象jsonData显示类似FirstName的属性为null,但已写入公式值。
objectuserinfo将写入的值存储在公式中,我已经检查过了
应该是这样吗
function userModel() {
var self = this;
self.Password = ko.observable();
self.User = ko.observable();
}
function UserViewModel(user) {
this.FirstName = ko.observable(user.FirstName);
this.LastName = ko.observable(user.LastName);
// other properties
}
function bindData(data) {
userInfo.Password(data["Password"]);
userInfo.User(new UserViewModel(data["User"]));
}
$(document).ready(function () {
userInfo = new userModel();
createUser();
ko.applyBindings(userInfo);
});
要使双向绑定起作用,您需要在视图模型上构建相同的可观察值层次结构 或者,您可以使用: 因为用户也是可观察的,所以您必须像这样更新绑定:
<input required class="form-control" data-bind="value: User().FirstName" type="text" />
输入{
显示:块;
保证金:5px0;
}
输入[只读]{
边界:无;
}
当前值:
我已经更新了我的帖子。这两种方法都没有在复杂对象中映射我的属性。我做错什么了吗?
<input required class="form-control" data-bind="value: User().FirstName" type="text" />