【问题标题】:Run jQuery code in a non-selected jQuery-UI tab - 1.10在未选择的 jQuery-UI 选项卡中运行 jQuery 代码 - 1.10
【发布时间】:2013-07-07 13:10:21
【问题描述】:

我正在尝试在未选中的 jQuery 选项卡中包含的元素上运行 jQuery 代码。如果我在 Ajax 加载完成之前快速单击选项卡,它可以工作,但是如果我让它运行而不被选中,则代码将不会被执行。

如下所示,我要加载数据的选项卡从一开始就没有定义,它是在用户单击按钮时创建的。

我想要实现的功能是选项卡,用户将在开始选项卡中搜索 X,然后创建新选项卡,在后台加载内容(需要用于网格和格式的 jQuery 代码)。然后用户可以单击选项卡并查看结果。

jQuery 1.10 jQuery-UI 1.10

例子:

<script>

$(document).ready(function(){

var myindex = 1;

$("#startsearch").click(function() {

    search = escape(($("#search").val()));

    searchdate = ($.datepicker.formatDate('yy-mm-dd', new Date()));

    var tabs = $( "#tabs" ).tabs();
    var ul = tabs.find( "ul" );

    // Add new tab
    newhtml = "<li id='henrik_tab_" + myindex + "Selector'><a href='#henrik_tab_" + myindex + "'>Search: " + searchdate + "</a></li>";
    newhtml2 = "<div id='henrik_tab_" + myindex + "'></div>";
    ul.append(newhtml);
    tabs.append(newhtml2);
    tabs.tabs( "refresh" );

    // Load data into tab
    $( "#henrik_tab_" + myindex).load("dosearch.php?data=" + search, function(responseTxt,statusTxt,xhr) {
            if(statusTxt=="success") {

        !! DOING STUFF WITH ELEMENTS CONTAINED IN THE NEW TAB HERE !!

            }
            if(statusTxt=="error")
                    alert("Error: "+xhr.status+": "+xhr.statusText);
    });

    // increse the counter for next tab
    myindex++;

});

$( "#tabs" ).tabs();

});
</script>

任何帮助将不胜感激。

【问题讨论】:

    标签: jquery-ui jquery jquery-tabs


    【解决方案1】:

    尝试更改代码

    tabs.append(newhtml2);
    

    $( "#tabs" ).append(newhtml2);
    

    如果不修复,想显示代码应该被执行但不是。

    【讨论】:

    • 问题解决了,我正在使用迷你图,并且 lib 有一个检查隐藏元素的检查,当我不在该选项卡中时,这些元素当然是隐藏的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多