0

我目前正在表达式引擎中构建一个网站,并希望将动态数据切换到一些标题 3 标签,这些标签也动态显示在网页上。当用户在网站上创建一个“部分”时,它会创建一个<h3>包含<div>他们输入的信息的部分。这一切都很好,但是我希望使用 Javascript 将数据切换应用到标题 3 标记(以及对 div 进行排序后的 ID)。我创建了一段 javascript,如下所示:

$(function(){
  {exp:channel:entries channel="page" dynamic="yes"}
    var toggles = new Array(
      {body}"{section_title}"{if row_count != total_rows},{/if}{/body}
    );
  {/exp:channel:entries}

  $.each( toggles, function( i, val ) {
    $('.about-content h3').attr("data-toggle", val);
  });
});

那里有一些表达式引擎代码,但这本质上是一个循环。所以发生的事情是循环抓取网页上部分的标题,然后将 int 放入数组中。这一切正常,输出如下:

var toggles = new Array("Values","Accreditations","Careers","Downloads");

旁注:一旦对这一位进行排序,我将删除大写字符和空格

我之前没有在 JavaScript / jQuery 中使用过数组,所以我很难将每个条目输出为在页面中进一步动态生成的 h3 标签的数据切换。标签已经存在,<h3>因此不需要使用该功能创建。

因此,在此示例<h3>中,将连续有四个标签。我可以遍历每个数组项,然后<h3>一个接一个地添加项目吗?

目前,当我使用 Firebug 检查元素时,它会显示如下代码:

<h3 data-toggle="Downloads">Values</h3>
<h3 data-toggle="Downloads">Accreditations</h3>
<h3 data-toggle="Downloads">Careers</h3>
<h3 data-toggle="Downloads">Downloads</h3>

但是,如果我查看源代码,它会显示为:

<h3 data-toggle="">Values</h3>
<h3 data-toggle="">Accreditations</h3>
<h3 data-toggle="">Careers</h3>
<h3 data-toggle="">Downloads</h3>

任何帮助将不胜感激。

谢谢你。

4

1 回答 1

0

如果有人感兴趣,我已经设法解决了这个问题。

$(function(){
  {exp:channel:entries channel="page" dynamic="yes"}
    var toggles = new Array(
      {body}"{section_title}"{if row_count != total_rows},{/if}{/body}
    );
  {/exp:channel:entries}

  $('.about-content h3').each(function(val) {
    $(this).attr("data-toggle" , toggles[val]);
  });
});

据我了解(我可能不了解),我只是说为每个.about-content h3添加一个数组条目作为 data-toggle 属性。

于 2013-11-15T12:06:15.303 回答