【问题标题】:Fuelux - How to populate repeater data using datasourceFuelux - 如何使用数据源填充转发器数据
【发布时间】:2014-10-27 20:43:20
【问题描述】:

我正在尝试将fuelux repeater 用于我的一个项目,但我在将数据填充到表中时有点挣扎。我使用了文档中给出的基本转发器模板,但无法正确理解their example,因为它使用了许多其他插件,如 require.js 和 underscore.js。谁能帮我理解如何做到这一点。本质上我想使用 php 和 js 将数据导入转发器。

我有一个 jsfiddle 设置 here 与我当前的进度。

<div class="fuelux">
    <div class="repeater" id="myRepeater">
    <div class="repeater-header">
      <div class="repeater-header-left">
        <span class="repeater-title">Awesome Repeater</span>
        <div class="repeater-search">
          <div class="search input-group">
            <input type="search" class="form-control" placeholder="Search"/>
            <span class="input-group-btn">
              <button class="btn btn-default" type="button">
                <span class="glyphicon glyphicon-search"></span>
                <span class="sr-only">Search</span>
              </button>
            </span>
          </div>
        </div>
      </div>
      <div class="repeater-header-right">
        <div class="btn-group selectlist repeater-filters" data-resize="auto">
          <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
            <span class="selected-label">&nbsp;</span>
            <span class="caret"></span>
            <span class="sr-only">Toggle Filters</span>
          </button>
          <ul class="dropdown-menu" role="menu">
            <li data-value="all" data-selected="true"><a href="#">all</a></li>
            <li data-value="some"><a href="#">some</a></li>
            <li data-value="others"><a href="#">others</a></li>
          </ul>
          <input class="hidden hidden-field" name="filterSelection" readonly="readonly" aria-hidden="true" type="text"/>
        </div>
        <div class="btn-group repeater-views" data-toggle="buttons">
          <label class="btn btn-default active">
            <input name="repeaterViews" type="radio" value="list"><span class="glyphicon glyphicon-list"></span>
          </label>
          <label class="btn btn-default">
            <input name="repeaterViews" type="radio" value="thumbnail"><span class="glyphicon glyphicon-th"></span>
          </label>
        </div>
      </div>
    </div>
    <div class="repeater-viewport">
      <div class="repeater-canvas"></div>
      <div class="loader repeater-loader"></div>
    </div>
    <div class="repeater-footer">
      <div class="repeater-footer-left">
        <div class="repeater-itemization">
          <span><span class="repeater-start"></span> - <span class="repeater-end"></span> of <span class="repeater-count"></span> items</span>
          <div class="btn-group selectlist" data-resize="auto">
            <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
              <span class="selected-label">&nbsp;</span>
              <span class="caret"></span>
              <span class="sr-only">Toggle Dropdown</span>
            </button>
            <ul class="dropdown-menu" role="menu">
              <li data-value="5"><a href="#">5</a></li>
              <li data-value="10" data-selected="true"><a href="#">10</a></li>
              <li data-value="20"><a href="#">20</a></li>
              <li data-value="50" data-foo="bar" data-fizz="buzz"><a href="#">50</a></li>
              <li data-value="100"><a href="#">100</a></li>
            </ul>
            <input class="hidden hidden-field" name="itemsPerPage" readonly="readonly" aria-hidden="true" type="text"/>
          </div>
          <span>Per Page</span>
        </div>
      </div>
      <div class="repeater-footer-right">
        <div class="repeater-pagination">
          <button type="button" class="btn btn-default btn-sm repeater-prev">
            <span class="glyphicon glyphicon-chevron-left"></span>
            <span class="sr-only">Previous Page</span>
          </button>
          <label class="page-label" id="myPageLabel">Page</label>
          <div class="repeater-primaryPaging active">
            <div class="input-group input-append dropdown combobox">
              <input type="text" class="form-control" aria-labelledby="myPageLabel">
              <div class="input-group-btn">
                <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
                  <span class="caret"></span>
                  <span class="sr-only">Toggle Dropdown</span>
                </button>
                <ul class="dropdown-menu dropdown-menu-right"></ul>
              </div>
            </div>
          </div>
          <input type="text" class="form-control repeater-secondaryPaging" aria-labelledby="myPageLabel">
          <span>of <span class="repeater-pages"></span></span>
          <button type="button" class="btn btn-default btn-sm repeater-next">
            <span class="glyphicon glyphicon-chevron-right"></span>
            <span class="sr-only">Next Page</span>
          </button>
        </div>
      </div>
    </div>
  </div>

</div>

【问题讨论】:

  • 您提供的代码只是 Fuel UX 文档的副本。也许你应该继续阅读——也许这个例子在这里:github.com/ExactTarget/fuelux/blob/gh-pages/assets/js/…
  • @jiy 请阅读我说我使用了fuelux 文档中提供的模板的描述。我不得不插入一些代码,因为在附加 jsfiddle 链接时,stackoverflow 需要代码。

标签: javascript php jquery twitter-bootstrap fuelux


【解决方案1】:

Fuel UX Repeater 使用基于 JSON 的数据源。这意味着您可能会使用 AJAX 加载 JSON 文件,然后格式化该数据并将其传递给数据源回调。您需要在 JSON 数组中的列和键/值对之间建立连接。

Here is how the repeater in the docs is set up。你所拥有的 JS 和 HTML 应该就是你所需要的。 Fuel UX 工作不需要 AMD/require.js。 Here is an example of the use of script tags only 如果您将 Fuel UX 下载到供应商文件夹中。

【讨论】:

  • 如果没有 require.js,我无法弄清楚如何做到这一点。我删除了所有需要的东西,但它仍然给出了这个错误:“未定义定义”:define(function(){
  • 我们正在开发一个不需要的 JSbin,应该在本周添加到文档中。 github.com/ExactTarget/fuelux/issues/678#issuecomment-61345919
猜你喜欢
  • 1970-01-01
  • 2023-02-01
  • 1970-01-01
  • 2014-01-27
  • 1970-01-01
  • 2010-09-11
  • 2013-08-08
  • 2015-01-27
  • 2014-07-02
相关资源
最近更新 更多