如何添加选择框动态,从数据库中检索数据

时间:2017-03-20 06:39:44

标签: javascript php jquery html mysql

我在Web开发方面遇到问题, 我已经使用PHP,MySQL和HTML添加了下拉列表。现在我想使用按钮并一次又一次地动态生成相同的选择框。我怎么能这样做,请帮助我..
这是我的选择框码。

 <Select name="txt-computer_sn" class="form-control" id="txt-computer_sn">
     <?php
         include ('../svr/connection.php');
         $sql = "SELECT * FROM supplier";
         $result = mysqli_query($conn, $sql);
         while ($row = mysqli_fetch_array($result)) {
             echo '<option value=' . $row['supplier_id'] . '>' . $row['supplier_name'] . '</option>';
         }
     ?>                         
 </select>      

3 个答案:

答案 0 :(得分:0)

如果下拉列表的数据保持不变,那么就可以这样做

html和php

<Select name="txt-computer_sn" class="form-control dynm_drop" id="txt-computer_sn">
                                    <?php
                                    include ('../svr/connection.php');
                                    $sql = "SELECT * FROM supplier";
                                    $result = mysqli_query($conn, $sql);
                                    while ($row = mysqli_fetch_array($result)) {
                                        echo '<option value=' . $row['supplier_id'] . '>' . $row['supplier_name'] . '</option>';
                                    }
                                    ?>                         
                                </select>     

jquery的

$("#buttonid").click(function(){
  $(".dynm_drop").clone().appendTo("class or id of element");
});

答案 1 :(得分:0)

试试这个:

<div class="select_wrapper">
    <select name="txt-computer_sn[0]" class="form-control" id="txt-computer_sn_0">
        <?php
        include ('../svr/connection.php');
        $sql = "SELECT * FROM supplier";
        $result = mysqli_query($conn, $sql);
        while ($row = mysqli_fetch_array($result)) {
            echo '<option value=' . $row['supplier_id'] . '>' . $row['supplier_name'] . '</option>';
        }
        ?>                         
    </select>
    <input type="button" name="add_select" class="add_select" value="Add New">
</div>
<script type="text/javascript">
$(document).ready(function() {
  var s=1;
  $('.add_select').click(function(e){ //Once add button is clicked
    e.preventDefault();
    s++;
    $('.select_wrapper').append('<select class="form-control" name="txt-computer_sn['+s+']" id="txt-computer_sn_'+s+'">'+$('#txt-computer_sn_0').html()+'</select>');
  });
});
</script>

答案 2 :(得分:0)

有3种方法可以做到这一点。我不熟悉php.but我告诉方法如何解决它。 1.你必须设置一个隐藏的字段来计算 2.
<select class="form-control" name="txt-computer_sn--" id="txt-computer_sn_--">

3.在脚本中写下这个var rep = / - / gi; 4.从隐藏的领域中计算你的数量

var Count= $("#Count").val()
Count =++Count                                
("#div1").append($("#div2").html().replace(rep,Count)); 
  1. 单击添加按钮,将div2与select附加到另一个 DIV1
  2. 删除 $("#div3"+id).remove()

  3. 在订单中 <div1></div> <div2 id="name1--"style=display:none> <div3 id="name2--"></div3> </div2>

  4. 它会工作。使用这个概念。你也可以在php中做到这一点..