javascript tanımlayamadığım kod
Genel kod yapısı
$.contextMenu({
selector: '.database',
build: function(e){
var id = $(e).data("id");
var name = $(e).data("name");
var surname = $(e).data("surname");
var phone = $(e).data("phone");
var entertime = $(e).data("entertime");
return {
callback: function(key, options) {
var m = "clicked: " + key;
console.log(m);
},
items: {
"whois":{name:name + " " + surname,disabled:true},
"sep1": "---------",
"addtime": {name: "30Dk. Ekle", icon: "clock"},
"wc": {name: "WC Molası",icon: "wc"},
"water": {name: "500ml su",icon: "water"},
"sep2": "---------",
"q":{ name: "Çıkış", icon: "close" }
},
}
}
});
bu kod yapısının içine items "q" için icon function metodu ekledim. ama çalışmıyor.
"q":{ name: function(e) {
if (id == "179") { return "HESABI KAPAT"; }
if (id == "180") { return "GRUP KAPAT"; }
},
icon: function(e) {
if (id == "179") { return "close"; }
if (id == "180") { return "group"; }
}
böyle çalışıyor.
"q":{ name: function(e) {
if (id == "179") { return "HESABI KAPAT"; }
if (id == "180") { return "GRUP KAPAT"; }
},
icon: "close"
Tam olarak ne yaptığını ve hatanı anlayamadım. Görünüşe göre syntax hataların var.
Böyle denersen olabilir.
"q":{
name: "HESABI KAPAT",
icon: function(e) {
if (id == "179") return "close"
if (id == "180") return "group"
}
}
contextMenu'yi incelediğimde name sadece string alabilir. Yani bir fonksiyon yazamazsın. 2 tane aynı işlevi yapacak olan bir şeyin varsa bunu 2 kere yazman gerekiyor.
Makaleye buradan ulaşabilirsin.