我從我的jquery-contextmenu sumbenu調用函數,根據點擊哪個選項傳遞一個特定的參數。來自jquery conextmenu的參數調用函數
我根據包含三個名稱的js對象生成該子菜單。當我點擊其中的一個時,就會顯示它,我的函數被稱爲參數,然後打印在控制檯上。
但它只是調用最後一個元素的函數,我不知道爲什麼。當我點擊「約翰」或「馬特」時,它只顯示「你按Petter」。
就像這個形象:
即使我從來沒有點擊「皮特」,它只是顯示「您按下皮特」。
代碼(我可以在這裏把小提琴,但我沒有發現jquery的文本菜單鏈接,我會很高興,如果你把它分享給我的,如果存在的話):
var obj = {"1":"john","2":"Matt","3":"Petter"};
function myFun(name){
console.log("you pressed "+name);
}
$(function() {
$.contextMenu({
selector: '.context-menu-one',
autoHide: true,
build: function($trigger, e) {
var options = {
items: {}
}
options.items["users"] = {name: "users", icon: "fa-circle", items: {}}
for(var i in obj){
options.items["users"].items[obj[i]] = {name: obj[i], icon: "fa-user", callback: function(){
myFun(obj[i]);
}}
}
return options;
}
});
});
對不起我的英語不好,謝謝。
美麗,TY這麼多! –