首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

jquery tabs 局部刷新选卡,怎么实现,求大神帮忙

2013-08-01 
jquery tabs 局部刷新选卡,如何实现,求大神帮忙在新建一个首次交底时,用ajaxForm表单提交,成功后,通过回调

jquery tabs 局部刷新选卡,如何实现,求大神帮忙
jquery tabs 局部刷新选卡,怎么实现,求大神帮忙
在新建一个首次交底时,用ajaxForm表单提交,成功后,通过回调函数返回这个页面并显示这条添加的信息
我希望只刷新选卡项的内容,不知道如何实现,求大家帮帮忙,在线等,很急 jQuery tabs
[解决办法]
$( ".selector" ).tabs( "refresh" );


http://api.jqueryui.com/tabs/#method-refresh


或者给tab的内容控件增加id,通过jquery来操作这个控件就行了$('#id').append('xxxxx')
[解决办法]
本帖最后由 showbo 于 2013-07-29 21:04:50 编辑 楼主什么版本的jquery UI?

1.8用$('selector').tabs('select',index)来激活需要的tab,index从0开始计算

1.9+用$( ".selector" ).tabs( "option", "active",index );
[解决办法]
楼主解决了么,版本大人说的很仔细啊,应该是没问题的啊,  我也跟3楼一样的疑问 你是刷新选项卡?还是选中的选项卡内容的记录区域? 如果是刷新选项卡,用refresh应该是可以的啊,或者close掉再open,
如果是刷新选项卡内容,就那刷新你绑定的那个数据表格就可以了,  其它的不会被刷新掉的。
 
[解决办法]

引用:
不行,版主的那两个都试了,在第二个选卡操作数据时,返回页面的时候还是默认第一个选项卡,不是当前的


10楼版主说的很仔细了,你仔细看看  根据你的版主参照试试, 
('selector').tabs('select',index) 我没用jqueryui 但是感觉这个应该是有的啊, 如果实在不行,你就close 再open 这样打开的那个永远在最后面,肯定也是选中的那一个。
[解决办法]
引用:
Quote: 引用:

楼主解决了么,版本大人说的很仔细啊,应该是没问题的啊,  我也跟3楼一样的疑问 你是刷新选项卡?还是选中的选项卡内容的记录区域? 如果是刷新选项卡,用refresh应该是可以的啊,或者close掉再open,
如果是刷新选项卡内容,就那刷新你绑定的那个数据表格就可以了,  其它的不会被刷新掉的。
 
刷新选中 的选项卡,我每次返回都是默认的第一个选项卡,


  $(function () {
        $("#tabs").tabs({ ajaxOptions: { async: true} },
              {
            beforeLoad: function (event, ui) {
                ui.jqXHR.error(function () {


                    ui.panel.html("加载错误 ");
                });
            }
        });

      
    });

  

    $(function () {
        $(".selector").tabs("refresh");
        var $tabs = $('#tabs').tabs();
        var selected = $tabs.tabs('option', 'selected');
      
    
    })
这是代码,看一下,帮帮忙



选择器要修改过啊。。tabs不是这样配置的吧


      $(function () {
          $('#tabs').tabs('option', 'active', 3);//激活第四个tabs
      });

[解决办法]
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Tabs - Default functionality</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<script>
    $(function () {
        $("#tabs").tabs({ active: 2 }); //默认第三个tab激活

        setTimeout(function () {//3s后自动设置第二个tab激活
            alert('active')
            $("#tabs").tabs('option', 'active', 1);
        }, 3000);
    });
</script>
</head>
<body>

<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
<div id="tabs-1">


<p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin. Sed ut dolor nec orci tincidunt interdum. Phasellus ipsum. Nunc tristique tempus lectus.</p>
</div>
<div id="tabs-2">
<p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie lectus, ut tempus eros massa ut dolor. Aenean aliquet fringilla sem. Suspendisse sed ligula in ligula suscipit aliquam. Praesent in eros vestibulum mi adipiscing adipiscing. Morbi facilisis. Curabitur ornare consequat nunc. Aenean vel metus. Ut posuere viverra nulla. Aliquam erat volutpat. Pellentesque convallis. Maecenas feugiat, tellus pellentesque pretium posuere, felis lorem euismod felis, eu ornare leo nisi vel felis. Mauris consectetur tortor et purus.</p>
</div>
<div id="tabs-3">
<p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede vel vehicula accumsan, mi neque rutrum erat, eu congue orci lorem eget lorem. Vestibulum non ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce sodales. Quisque eu urna vel enim commodo pellentesque. Praesent eu risus hendrerit ligula tempus pretium. Curabitur lorem enim, pretium nec, feugiat nec, luctus a, lacus.</p>
<p>Duis cursus. Maecenas ligula eros, blandit nec, pharetra at, semper at, magna. Nullam ac lacus. Nulla facilisi. Praesent viverra justo vitae neque. Praesent blandit adipiscing velit. Suspendisse potenti. Donec mattis, pede vel pharetra blandit, magna ligula faucibus eros, id euismod lacus dolor eget odio. Nam scelerisque. Donec non libero sed nulla mattis commodo. Ut sagittis. Donec nisi lectus, feugiat porttitor, tempor ac, tempor vitae, pede. Aenean vehicula velit eu tellus interdum rutrum. Maecenas commodo. Pellentesque nec elit. Fusce in lacus. Vivamus a libero vitae lectus hendrerit hendrerit.</p>


</div>
</div>

<div class="demo-description">
<p>Click tabs to swap between content that is broken into logical sections.</p>
</div>
</body>
</html>


[解决办法]
没看明白,href指向的页面都是通过ajax加载的,不会刷新页面,tab的焦点不会更改。对tab的内容进行操作也不会更换tab焦点啊。。

难道有表单提交操作?
[解决办法]
ajaxForm应该是无刷新的,不应该刷新页面,不是是新增后刷新过页面了,tab都不见了。。?
[解决办法]
location.href = "/SupervisionScheme/ShowSubjectPage?subjectName=" + subjectname + "&subjectAddress=" + address + "&projectID=" + projectID;

描红页面是tabs放置的页面??你应该跳转到放置tab的那个页面去。。然后多增加一个参数指定从哪个tab返回的,这样在tab页面就可以获取这个参数,然后设置对应的tab获取焦点

location.href = "/SupervisionScheme/ShowSubjectPage?subjectName=" + subjectname + "&subjectAddress=" + address + "&projectID=" + projectID+'&tabid=2';
[解决办法]
你应该跳转错页面了吧。。要不tabs怎么会不见。。
[解决办法]
 window.location.href = "/FirstOver/ToShowFirstOver?subjectName=" + subjectname + "&subjectAddress=" + address + "&projectID=" + projectID+'&tabid='+tabid;


你要将tabid传递到显示tabs的页面,然后显示tabs页面获取这个参数,在生成tabs的时候设置激活那个tab


ToShowFirstOver

 var tabid = '@ViewBag.tabid';
$("#tabs").tabs(

          {active:tabid, beforeLoad: function (event, ui) {
              ui.jqXHR.error(function () {
                  ui.panel.html("加载错误 ");
              });
          }

          });

热点排行