【问题标题】:jQuery - Append list with as many options as there are in PHP valuejQuery - 附加列表,其中包含与 PHP 值一样多的选项
【发布时间】:2012-07-14 05:48:35
【问题描述】:

如果我有如下列表:

<ol>
    <li></li>
</ol>

我想附加一个 li,其中包含一个数字值范围内的数字,因此输出为:

<? $number = "5"; ?>
<ol>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ol>

如何在 jQuery 中做到这一点?

对于那些想知道我在用这段代码做什么的人,请查看这个 Fiddle:http://jsfiddle.net/dnLbV/19/。我正在将 Fiddle 应用到最低的独特便士拍卖中,其中出价数量有限。

【问题讨论】:

  • 我在下面发布了一个答案,但是您是否有任何特殊原因要使用 php 变量作为 javascript 语句中的变量?当您可以仅使用该 php 变量纯粹在服务器端呈现页面而根本不必担心任何 javascript 时,这似乎真的浪费了客户端处理。
  • 我不知道你可以在 PHP 中做到这一点。我有一个可选择的列表,我希望该列表与可选择的数量一样大。 “可以被选中”是指任何选择的人;不仅仅是本地。
  • 是的,只要按照我的回答,它纯粹是在服务器端完成的,而不是让客户端来处理它。
  • 作为参考,您真正需要 javascript 来为您构建列表的唯一时间是,如果您在页面加载之前不知道您需要多少选项,那么您将执行 ajax查询请求所需的项目数,然后使用 javascript 填充列表。但在你的情况下,这不是必需的。

标签: jquery list append


【解决方案1】:

您不会在 jQuery 中执行此操作,而是在 php 中执行此操作。除非您正在执行 ajax 调用,否则您将在使用 jQuery 加载页面后追加。但是在 PHP 中你会这样做。

<?php $number = "5"; ?>
<ol>
<?php 
    for($index = 1; $index <= $number; $index++)
       echo "<li>$index</li>";
?>
</ol>

除非它响应某种 ajax 请求,否则不要真正理解在 jQuery 中这样做的意义。

【讨论】:

  • 谢谢,我想我可以改用这个 PHP 代码。特别是因为我现在意识到不需要使用 jQuery 动态更改输出。
  • 我不擅长 PHP。您能否以“for”之前有回声的形式显示 PHP 代码?
  • chat.stackoverflow.com/rooms/13890/php-for-loops 去这里,我们可以多谈谈。
【解决方案2】:

试试这个:

for (var i = 1; i <= 5; i++){
  $('ol').append('<li>'+ i +'</li>')
}

http://jsfiddle.net/z4PSe/

【讨论】:

    【解决方案3】:

    jQuery:

    var li = "";
    for(var i=0;i<<?php echo $number;?>;i++){
        li += "<li>" + (i+1) + "</li>";
    }
    $("#listID").append(li);
    

    HTML:

    <ol id="listID">
    </ol>
    

    请注意,在纯 JavaScript 中完全可以通过将 $("#listID").append(li); 替换为 document.getElementById("listID").innerHTML = li; 来完成此操作

    【讨论】:

      【解决方案4】:
      for(var i =1; i <= <?php echo $number ?>; i++){
          $('<li />').html(i).appendTo('ol');
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-01
        • 1970-01-01
        相关资源
        最近更新 更多