0

我搜索了这个问题的解决方案,然后我来到了这个:http ://blog.amcharts.com/2012/08/displaying-javascript-charts-in-tabs-or.html这似乎很容易。但是当我根据示例应用那段代码时,选项卡停止工作,我无法在它们之间切换。

在 URL 中,根据我单击的选项卡有一些变化,但内容没有切换,选项卡也没有。即使经过两天的搜索,我也无法弄清楚。我的代码结构是这样的:

  1. 我得到了带有 html 代码的文件,标签的 JS 代码(就像 amCharts 网站上的示例一样),以及将内容从其他文件加载到标签的功能:

    $("#zalozka_kalkulace").click(function(){
        $("#detail_ceny_switch_ceny").addClass("open");
        $("#detail_ceny_switch_ceny").removeClass("rucka");
        $("#detail_ceny_switch_ceny").css({ 'height' : '478px', 'margin-bottom' : '-360px', 'margin-right' : '-475px', 'float' : 'left', 'top' : '-360px', 'width' : '871px' });
        if($("#detail_ceny_grafy_kalkulaci").html() == ""){
            $("#detail_ceny_grafy_kalkulaci").load('./safe/kalkulace_grafy_all.php?k_stupen=<? echo $k_stupen; ?>&k_polozka=<? echo $co; ?>',function(){
                $("#detail_ceny_grafy_kalkulaci").removeClass("hidden");
            });
        }else{
            $("#detail_ceny_grafy_kalkulaci").removeClass("hidden");
        }
    });
    
  2. 我得到了另一个文件,其中包含选项卡中显示的所有内容。这意味着应该在其中显示图表的 div,以及图表数据和图表本身的 JS 代码(就像 amCharts 网站上的示例一样)

你知道如何解决这个问题吗?我得到了该示例中的所有内容(我复制了该示例),但只是在两个文件中分开。

4

1 回答 1

1

我不认为它会那样工作。通过 jQuery.load 加载的 JavaScript 代码不会被执行。

解决方案是使用两个 AJAX 请求分别加载 HTML 和 JavaScript 部分:用于 HTML 的jQuery.load和用于 JavaScript 部分的 jQuery.getScript。或者,更好的是,修改加载的脚本以包含 HTML 项。

IE:

在主脚本中:

$.getScript("./safe/kalkulace_grafy_all.php?k_stupen=<? echo $k_stupen; ?>&k_polozka=<? echo $co; ?>',function(){
  $("#detail_ceny_grafy_kalkulaci").removeClass("hidden");
});

在加载的脚本中:

$("#detail_ceny_grafy_kalkulaci").html('<div id="chartdiv"></div>');
var chart = new AmCharts.AmSerialChart();
....
chart.write("chartdiv");
于 2013-02-03T21:01:09.387 回答