我想填充弹出的元素被点击的数据。例如,我有一个用户名单,位置等列表。然后,当我点击'查看更多'时,弹出窗口显示与列表项目中相同的用户数据。 目前没有任何东西被写入弹出窗口中。如何将数据从一个元素填充到另一个点击knockout.js
请看这里举例:http://jsfiddle.net/46LJ9/
JS/KO
//should be a json from server
var users = [
{
"name": "Yoshi",
"surname": "Kawasaki",
"position": "Developer"
},
{
"name": "Miu",
"surname": "Furinji",
"position": "Martial Artist"
},
{
"name": "Shigure",
"surname": "Kosaka",
"position": "Martial Artist Master"
},
{
"name": "Ore",
"surname": "Ore Ga",
"position": "Martial Artist and Developer"
}
];
(function($, ko, window) {
var UserModel = {
name: ko.observable(''),
surname: ko.observable(''),
position: ko.observable(''),
users: ko.observableArray(users),
userDetails: ko.observable({}),
showOverlay: function(o) {
UserModel.userDetails(o);
$('.overlay, .overlay-bg').fadeIn(400, function() {
$(this).removeClass('hide').addClass('show');
});
},
closeOverlay: function(o, e) {
$('.overlay, .overlay-bg').fadeOut(400, function() {
var $this = $(this);
$this
.removeClass('show')
.addClass('hide')
.removeAttr('style');
});
}
};
ko.applyBindings(UserModel);
}(jQuery, ko, window));
它会更容易看如果你创建一个jsfiddle来展示问题 – Tanner
我正在考虑用jsfiddle来做。但在过去,我曾经在jsfiddle中做过这件事,并得到很多投诉......我会尽快更新这个问题。请在@Tanner大约5分钟后回来。许多感谢 – Shaoz
它现在在jsfiddle中:http://jsfiddle.net/46LJ9/ – Shaoz