【问题标题】:Loop to create multiple div elements? JQUERY循环创建多个 div 元素?查询
【发布时间】:2011-03-16 23:51:54
【问题描述】:

知道我的代码有什么问题吗?

var pageLimit=30;

$(document).ready(function() {
 for(var i = 1; i <= pageLimit; i++) {
  $('#test').append('<div id="page' + i + '" class="touch">TESTING</ div>' )
 }
}

我想要的是让该函数在正文中创建与 pageLimit 值一样多的 div。因此,如果有人进入代码并将 pageLimit 更改为 50,它将创建 50 个 div 标签。

在正文标签中,我只有测试 div。 我想将它放入正文中,而不是将其插入任何其他 div 中。所以我尝试用body替换#test,没有用。

请帮忙!谢谢。

编辑:对不起,我有 );在我的原始代码中,我只是忘了在这里复制它! 是的,
标签是在我知道如何将代码插入此之前...大声笑对不起。我有 );在我的原始代码中,它仍然不起作用。

【问题讨论】:

  • 您能否展示一些 html 代码 - 您有什么,以及当您的代码完成操作后您希望拥有什么?
  • 所有代码行前加4个空格,stackoverflow上会正常显示。
  • 要添加 HTML,编辑你的问题(当你查看它时应该有一个编辑链接)并通过突出显示它并单击 101010 按钮使代码部分成为一些代码。跨度>
  • 我假设&lt;br/&gt; 标签也不在你的代码中?
  • 使用像firebug这样好的调试器来获得对javascript错误消息的良好描述...

标签: jquery loops html


【解决方案1】:
$('body').append('<div>TESTING</div>')

应该可以。您的无效代码是什么样的?

【讨论】:

    【解决方案2】:

    这似乎仍然是一个语法问题,您的元素字符串中有简单的引号,然后是反引号,请尝试删除反引号。当然,请确保您的 html 中有 &lt;div id="test"&gt;&lt;/div&gt;

    $(document).ready(function() {
       for(var i = 1; i <= pageLimit; i++) {
         $('#test').append('<div id="page' + i + '" class="touch">TESTING</div>' )
       }
    });
    

    除非那是您的问题中的另一个错字。

    【讨论】:

    • 否 那是因为当你想在引号内包含引号时,外引号应该是单引号,而内引号应该是双引号。如果你使用notepad++,你可以看到差异。至少我的老师是这么教我的!
    • 我说的是反引号(`)。正如您在我放置的代码中看到的那样,我也有单引号和双引号。
    【解决方案3】:

    document.body.innerHTML += 'TESTING'; 怎么样? ?

    【讨论】:

    • 此错误与“$(document).body 未定义”。当您将文档包装为 JQeury 对象时。您需要做的就是 document.body... 不需要 JQuery。
    【解决方案4】:

    您的问题是一个简单的语法问题。你错过了“)”。始终确保也添加行尾。这有效:

    $(document).ready(function () {
             for (var i = 1; i <= pageLimit; i++) {
                 $('#test').append('TESTING');
             }
         });
    

    【讨论】:

    • 另外:这是优化后的代码。这使得一个 DOM 操作将大大提高性能。 var pageLimit = 30, 测试 = '测试'; $(document).ready(function () { for (var i = 1; i
    【解决方案5】:

    http://jsfiddle.net/Q6Lnw/2/

    你错过了就绪函数)的结尾

    【讨论】:

      【解决方案6】:

      缺少“);”在最后一个 } 之后。

      $(document).ready(function () {
          for (var i = 1; i <= pageLimit; i++) {
              $('#test').append('TESTING');
          } 
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-07
        • 1970-01-01
        • 1970-01-01
        • 2018-03-26
        相关资源
        最近更新 更多