【问题标题】:jQuery UI Tabs: Mismatching fragment identifierjQuery UI 选项卡:不匹配的片段标识符
【发布时间】:2010-12-28 03:58:33
【问题描述】:

我正在尝试使用 jQuery (UI)、Haml 和 Rails 创建约会调度程序。我正在为接下来的 4 周制作一组标签。

#schedule
  %ul
    - @schedule.each_index do |i|
      %li
        %a{:href => "#schedule-#{i}"} #{@schedule[i][:week_range]}
  - @schedule.each_index do |i|
    %div{:id => "#schedule-#{i}"}
      %p test

理想情况下,这将创建一组标签,例如(12 月 27 日至 1 月 N 日)作为标签标题,然后在每个框中都有“测试”。

在 applications.js 我有:

$('#schedule').tabs();

但是,这不能正确呈现,当我单击一个选项卡时,它会在 javascript 控制台中给我这个错误:

jQuery UI Tabs: Mismatching fragment identifier.

我正在使用最新的 jQuery 和 jQuery UI 版本。

谁能告诉我我做错了什么?

这是相应的 HTML 的样子:

<div id='schedule'>
    <ul>
        <li>
            <a href='#schedule-0'> December 27 - January 2</a>
        </li>
        <li>
            <a href='#schedule-1'> January 3 - January 9</a>
        </li>
        <li>
            <a href='#schedule-2'> January 10 - January 16</a>
        </li>
        <li>
            <a href='#schedule-3'> January 17 - January 23</a>
        </li>
    </ul>
    <div id='#schedule-0'>
        <p>test</p>
    </div>
    <div id='#schedule-1'>
        <p>test</p>
    </div>
    <div id='#schedule-2'>
        <p>test</p>
    </div>
    <div id='#schedule-3'>
        <p>test</p>
    </div>
</div>

【问题讨论】:

  • 生成的 HTML 是什么样的?
  • 我在$(document).ready(function() {...}); 内部调用$('#schedule').tabs();,所以我想是的......

标签: jquery ruby-on-rails jquery-ui haml


【解决方案1】:

您的 ids 在生成的 HTML 中不应包含 #。将%div{:id =&gt; "#schedule-#{i}"} 更改为%div{:id =&gt; "schedule-#{i}"}

【讨论】:

    猜你喜欢
    • 2012-02-07
    • 2013-02-15
    • 2011-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-28
    • 1970-01-01
    相关资源
    最近更新 更多