6

これが私のコードです:

<div id="tablesTabs">
        <ul>
            <li><a id="changed" href="#changedTable"><% "Changed" %></a></li>
            <li><a id="unchanged" href="#changedTable"><% "Unchanged"%></a></li>
        </ul>
    </div>

<div id="tablesDiv">
        <div id="changedTable" style="width:100%; height:430px;"></div>
    </div>

そしてJavaScriptで:

$(function () {
        $("#tablesTabs").tabs({
            cache: true
        }).scrollabletab();
        loadTables();
    });

if ($('#tablesTabs').tabs("option", "selected") == 0) {
    //fill table with data
}

if ($('#tablesTabs').tabs("option", "selected") == 1) {
    //fill table with other data
}

最初のタブは問題ないようです。グリッドは問題ありません。しかし、2 番目のタブをクリックすると、Uncaught jQuery UI Tabs: Mismatching fragment identifier というエラーが表示されます。何が問題で、どのように修正するのですか?

4

3 に答える 3

13

まず、問題が 2 つのタブの href 属性に同一のリンクがあることであるかどうかを確認します。両方とも#changedTable、タブごとに固有の href を設定してみてください。

第二に、あなたのタブ設定は私にはなじみがないようです。たぶんそれでいいのですが、私は常にタブ div 内にコンテンツ div を持っています。

として:

<div id="tabs">
  <ul>
    <li><a href="#tab-1">Something</a></li>
    <li><a href="#tab-2">Something else</a></li>
  </ul>

  <div id="tab-1">
    <p>Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla.</p>
  </div>
  <div id="tab-2">
    <p>Curabitur ornare consequat nunc. Aenean vel metus.</p>
  </div>
</div>
于 2013-03-01T11:21:28.140 に答える
7

タブの href には # 記号が必要であり、タブ コンテンツの ID には # を使用できません。

于 2015-12-07T07:43:59.697 に答える