可以';t使用Javascript添加下拉列表yii


Can't add dropdown list yii using Javascript

我对yii还是个新手现在我想添加一个Javascript代码,当我点击按钮时,它可以将下拉列表附加到表中。

这是我的桌子:

  <table class="table table-hover" id="table-add-more">
    <tr>
        <th style="width:50px;">No</th>
        <th style="width:200px;">Name</th>
        <th style="width:50px;">Count</th>
        <th style="width:30px;"></th>
    </tr>
    <tbody>
    </tbody>
  </table>

这是我的按钮:

  <a id="btn-add-more" class="btn btn-sm btn-success">Add More</a>  

这是我的脚本:

<script>
  $(document).ready(function(){
    var number = 1;
    var product = <?php $product = Product::model(); echo $form->dropDownList($product,'ID', CHtml::listData(Product::model()->findAll(), 'ID', 'name')); ?>;
        $('#btn-add-more').click(function() {
            var more_field  = "<tr>"+
                             "<td>"+number+"</td>"+
                             "<td>"+                                
                                <?php echo "product"; ?>
                             +"</td>"+
                             "<td><input type='number'/></td>"+
                             "<td><input type='checkbox'/></td>"+
                             "</tr>"
            $('#table-add-more').append(more_field);
            number = number + 1;    
        });
  });
  </script>

我收到一条错误消息:

"意外令牌<"

var product = <select name="Product[ID]" id="Product_ID">附近但是我还没有发现错误。请帮忙。。

我认为更好的方法是在初始化时使用display: none的下拉列表,当您单击该按钮时,您可以将显示更改为块。但是,如果您想将下拉列表附加到表中,我认为您的javascript函数中存在两个问题:

1.您需要将这个php代码封装到""中。

var product = "<?php $product = Product::model(); echo $form->dropDownList($product,'ID', CHtml::listData(Product::model()->findAll(), 'ID', 'name')); ?>";
  1. 我认为你需要<?php echo $product; ?>,而不是<?php echo "product"; ?>