Uncaught SyntaxError: Unexpected token < while calling cakephp select form directly in javascript

Uncaught SyntaxError: Unexpected token < while calling cakephp select form directly in javascript

我有一个与 javascript 和 PHP、

相关的基本问题

我正在尝试在 javascript 中包含一个 select 选项。出于调试目的,我对输入文本框做了同样的事情,它工作正常。一旦我使用 cakephp 表单助手通过从控制器传递的数组列表加载选项,我就会收到上述错误。我将通过代码示例解释我想要实现的目标:

我有一个表单和一个 div 标签,我想在其中使用 javascript、jquery 附加 select 选项。

我的查看文件:

<?php echo $this->Form->create('GenericDrug'); ?>
 <div class="voca">
 </div>

<button type="button" class="btn btn-success btn-add" >
 <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span> Add more
</button>


<?php echo $this->Form->end(); ?>

从我的控制器传递的值:

public function admin_edit($id = null) {
//other codes

$this->set(compact('drugClasses','genericDrugs','drugClassList'));
}

这些 类 是使用 ORM

建模的

现在我想要一个 jquery/javascript 函数,这样它将在 div 标签中附加我的 select 选项,分类为 'voca'。

到目前为止我已经做了: 在我的视图文件中:

<script type="text/javascript">
    var i = <?php echo $this->Form->input('drug_class_id'); ?>
$(function()
{
$(document).on('click', '.btn-add', function(e)
{

    $(i).appendTo( ".voca" );
</script>

输入 drugclassid 将为 select 生成选项列表。但是,我尝试了很多摆弄,但找不到解决方案。该页面确实在后端呈现并发送所有选项数据,但是我收到 javascript 错误消息

Click to see error message

试一试

    <script>
      var myvar = <?php echo json_encode($this->Form->input('drug_class_id')); ?>
    </script>