Title: error TypeError: $.data(...) is undefined [solved]
Post by: Opan Mustopah on November 18, 2014, 02:26:19 AM
hello again, i have a trouble using menu plugin. it always shown an error like this: TypeError: $.data(...) is undefined
$('<div class="menu-rightarrow"></div>').appendTo(_a); //in line 81 on jquery.menu.js
and here is my 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
Title: Re: error TypeError: $.data(...) is undefined [solved]
Post by: Opan Mustopah on November 18, 2014, 03:06:55 AM
problem solved. sorry
|