JqueryEasyUI选项卡-Tabs的使用,Tabs使用经典错误的解决方法

最近在学习jquery框架,感激比较容易,也比较实用,虽然没有ext那么强大,但是一般的需求还是能满足。并且很好的一点是,jquery在众多人的关注努力下每天都在进步。以前的UI设计也不是很好,但是出现了JqueryEasyUI1.2之后,发现和ext越来越接近了。呵呵,真的很强大,相信这个UI会越来越好,也会有越来越多的人关注这个框架,这个UI。
      以下是easyUI1.2的tabs的简单实用介绍,这个不是重点,重点的是我后面使用过程中发现的问题,及解决方案。
     var e =$('#main').tabs('exists','accordion');
 if(e==true){
  $('#main').tabs('select','accordion');
  return ;
 }
 $('#main').tabs('add',{
  title:'accordion',
  href:'accordion.html',
  closable:true
 });

功能是用户第一次点击打开tab页就打开一个tab页,当用户没关闭这个tab页,又去另外一个tab页操作,再回来刚才的tab页后就不用打开另外一个和刚才一样的tab页,而是同一个tab页。

如果把href后面的换成jsp动态页面
     var e =$('#main').tabs('exists','goodInfo');
 if(e==true){
  $('#main').tabs('select','goodInfo');
  return ;
 }
 $('#main').tabs('add',{
  title:'goodInfo',
  href:'${ctx}/goods/good_list2.jsp',
  closable:true
 });
问题就来了,第一次打开一个tab页没错,但是第二次点击打开另外一个的时候就出错了。并且jquery这点也很不好,只要出现jquery出现错误了,就会影响其他的,并且很难调试,因为你不是在一个页面,而是一个大的页面包含很多小的页面,现在也没有一个好的js调试工具,期待。。。。。。。
解决方法就是不用href了,换成用content属性,呵呵,tabs还是有很多属性的,这个不行换一个试试。
var url="${ctx}/goods/good_list2.jsp";
   var content = '<iframe scrolling="no" frameborder="0"'+
           'src="'+url+'" style="width:100%;height:100%;"></iframe>';
   if(!$('#main').tabs('exists','goodInfo')){
    $('#main').tabs('add',{
     title:'goodInfo',
     content:content,
     //href:'${ctx}/goods/good_list2.jsp',
     closable:true
    });
   }else{
    $('#main').tabs('select','goodInfo');
   }
这样问题就解决,至于为什么会出现这个错误,我只是有点小小想法,不知道正确不正确,这里也就不说了,以后研究出来了再和大家分享。

你可能感兴趣的:(jquery)