EasyUI Forum
November 04, 2025, 04:33:34 PM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: error TypeError: $.data(...) is undefined [solved]  (Read 17823 times)
Opan Mustopah
Full Member
***
Posts: 164


Indonesia


View Profile Email
« on: November 18, 2014, 02:26:19 AM »

hello again, i have a trouble using menu plugin. it always shown an error like this:

Code:
TypeError: $.data(...) is undefined

$('<div class="menu-rightarrow"></div>').appendTo(_a); //in line 81 on jquery.menu.js

and here is my code :
Code:
var tabs_id = $('#tabs_group');
var content = "";
var states =  getCookie("tabState");
var dropMenu = $('a[data-child="true"]');

$(function(){
tabs_id.tabs({
fit:true,
border:false
});

for (var j = 0; j < dropMenu.length; j++) {
 var id = $(dropMenu[j]).attr('id');
 var id_menu = $(dropMenu[j]).attr('id-menu');
 var menu = $('#' + id_menu);
 ajaxReq(menu,id_menu);
}
/*
if (states){
var conArr = states.split('|');
for(var i=0;i<conArr.length;i++){
var tabState = conArr[i];
var conTab = tabState.split(",");

var idTab = conTab[0];
var id_menu = conTab[1];

console.log($("#"+idTab).attr('class'));
console.log(idTab);
createTab(id_menu, idTab);
}
}
*/
});

function loadMenu(){

for (var j = 0; j < dropMenu.length; j++) {

 var id = $(dropMenu[j]).attr('id');
 var id_menu = $(dropMenu[j]).attr('id-menu');
 var menu = $('#' + id_menu);
 ajaxReq(menu,id_menu);
 
}
}

function ajaxReq(menu, id_menu){
 $.ajax({
   url: '#{load_dropdown_path}',
   dataType: 'json',
   type: 'get',
   data: {
     prm_id_menu: id_menu
   }
 }).done(function (data) {
   for (var i = 0; i < data.length; i++) {
     var d = data[i];
     var item = menu.menu('findItem', d.namamenu);
     if (item == null) {
       if (d.is_level1 == true) {
         menu.menu('appendItem', {
           id: d.id,
           text: d.namamenu,
           onclick: function () {
             return addTab(this, id_menu)
           }
         });
         var menu_item = menu.menu('getItem', $('#' + d.id) [0]);
         $(menu_item.target).attr({
           url: d.url,
           submenuParent: false,
           'id-menu': d.id_menu,
           port: d.port
         });
       } else {
         var parent = menu.menu('findItem', d.parent);
         menu.menu('appendItem', {
           parent: parent.target,
           id: d.id,
           text: d.namamenu,
           onclick: function () {
             return addTab(this, id_menu)
           }
         });
         var menu_item = menu.menu('getItem', $('#' + d.id) [0]);
         $(menu_item.target).attr({
           url: d.url,
           submenuParent: false,
           'id-menu': d.id_menu,
           port: d.port
         });
       }
     }
   }
 });
}

function addTab(target,id_menu){
var obj = $(target);
var url = obj.attr('url');
var status = obj.attr('submenuParent');
var id_menusub = obj.attr('id-menu');
var port = obj.attr('port');
var tabLength = tabs_id.tabs('tabs');
if (tabLength.length > 10){
$.messager.alert('Warning','Tabs length has reached maximum number.','warning');
return false;
}
console.log(obj.attr('id'));
console.log(id_menu);

create_param(function(result){

if (url == '-'){
return false;
}
if (status == 'true'){
var opt = obj.linkbutton('options');
var idTab = opt.id;
var tab_name = opt.text;
}else{
var idTab = obj.attr('id');

var item = $('#'+id_menu).menu('getItem',$('#'+idTab)[0]);
var tab_name = item.text;
}

var host = window.location.hostname;

if (port == '-'){
content = "<iframe class='iframe_content' scrolling='auto' frameborder='0' src='/"+url+"?prm="+result+"' style='width:100%;height:100%;'></iframe>";
}else{
content = "<iframe class='iframe_content' scrolling='auto' frameborder='0' src='http://"+host+":"+port+"/"+url+"?prm="+result+"' style='width:100%;height:100%;'></iframe>";
}

if (tabs_id.tabs('exists',tab_name)){
tabs_id.tabs('select',tab_name);
}else{
tabs_id.tabs('add',{
id: idTab+'-panelTab',
title: tab_name,
closable: true,
content: content
});
console.log(idTab);
var checkCookies = checkCookie("tabState");

if (checkCookies == ""){
setCookie("tabState",idTab+","+id_menu,1);
}else{
checkCookies += "|"+idTab+","+id_menu;
setCookie("tabState", checkCookies, 1);
}
}

},id_menusub);
}



function create_param(callback, menusub){
var ajx = $.ajax({
url: '#{create_param_path}',
dataType: 'json',
type: 'get',
data: {
vim: menusub
}
})
.done(function(data){
callback(data.data_id);
})
.fail(function(request,status,error){
$.messager.alert('Error',request.responseText,'error');
return false;
});
}


any help will appriciate,thanks in advance
Opan
« Last Edit: November 18, 2014, 03:06:38 AM by Opan Mustopah » Logged

-- Bajak Otak --
*** Sorry for my bad english :3 ***
--JeasyUI version 1.4--
Opan Mustopah
Full Member
***
Posts: 164


Indonesia


View Profile Email
« Reply #1 on: November 18, 2014, 03:06:55 AM »

problem solved. sorry
Logged

-- Bajak Otak --
*** Sorry for my bad english :3 ***
--JeasyUI version 1.4--
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!