v2.5.2
Giriş yap

javascript tanımlayamadığım kod

istek61
245 defa görüntülendi

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"

devepdogukan
454 gün önce

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.