Javascript 单击事件不';在淘汰赛中,每个人都不能在第二场比赛中获胜
为什么我的点击事件在第二个foreach中不起作用 我的html:Javascript 单击事件不';在淘汰赛中,每个人都不能在第二场比赛中获胜,javascript,knockout.js,Javascript,Knockout.js,为什么我的点击事件在第二个foreach中不起作用 我的html: 我的剧本: var modelCategory = function (id, name) { var self = this; self.changeTopChildren = ko.observable(false); self.name = ko.observable(name); self.id = ko.observable(id); } var modelProduct =
我的剧本:
var modelCategory = function (id, name) {
var self = this;
self.changeTopChildren = ko.observable(false);
self.name = ko.observable(name);
self.id = ko.observable(id);
}
var modelProduct = function (id, name) {
var _self = this;
_self.name = ko.observable(name);
_self.id = ko.observable(id);
_self.selectLi = function () {
alert("li");
console.log(" selectLi");
};
}
var viewModelMenuBody = function () {
var self = this;
self.selectLi = function (tag) {
alert("li");
console.log(" selectLi");
};
self.categoryArray = ko.observableArray();
self.items1 = ko.observableArray();
var temp = null;
self.mouseOverKnockout = function (arg, e) {
temp = arg;
for (var i = 0; i < self.categoryArray().length; i++) {
self.categoryArray()[i].changeTopChildren(false);
}
arg.changeTopChildren(true);
$.getJSON("/Home/getChildrenForMenu", { id: arg.id }, function (rowProduct) {
self.items1.removeAll();
for (var total = 0; total < rowProduct.length; total++) {
var temp = new modelProduct();
temp.id(rowProduct[total].id);
temp.name(rowProduct[total].name);
self.items1.push(temp);
}
});
}
self.mouseOutKnockout = function (arg) {
if (arg!=null)
arg.changeTopChildren(false);
//else
// temp.changeTopChildren(false);
};
(function () {
$.getJSON("/Home/getDataForMenu", null, function (rowCategory) {
for (var total = 0; total < rowCategory.length; total++) {
var temp = new modelCategory();
temp.id(rowCategory[total].id);
temp.name(rowCategory[total].name);
self.categoryArray.push(temp);
}
});
})();
};
var viewModel1 = new viewModelMenuBody();
ko.applyBindings(viewModel1, document.getElementById('menuBody'));
var modelcegory=函数(id、名称){
var self=这个;
self.changeTopChildren=ko.可观察(假);
self.name=ko.observable(名称);
self.id=ko.可观察(id);
}
var modelProduct=函数(id、名称){
var _self=这个;
_self.name=ko.observable(名称);
_self.id=ko.可观察(id);
_self.selectLi=函数(){
警惕(“li”);
console.log(“selectLi”);
};
}
var viewModelMenuBody=函数(){
var self=这个;
self.selectLi=功能(标签){
警惕(“li”);
console.log(“selectLi”);
};
self.categoryArray=ko.observableArray();
self.items1=ko.observearray();
var-temp=null;
self.mouseOverKnockout=函数(arg,e){
温度=arg;
对于(var i=0;i
所有方法都在根viewmodel对象中定义。因此,$parent。从嵌套的foreach
绑定中选择li
调用将不起作用,因为$parent
上下文引用外部foreach
的当前项
使用$root。选择li
更多信息:对于这样一个小问题,您已经发布了很多代码。请把代码删减到最低限度。如果您告诉我们“不工作”的含义(错误?调试信息?等),以及您迄今为止尝试和研究的内容,也会有所帮助。