$this->Js->buffer("
var searchTerm = $(this).html();
var searchId = $(this).attr('data-tag');
$('.tags').append('<input type='text' value='+searchTerm+' name='data[Tag][tags]['+searchId+']'');
");
那是你的代码。在 PHP 中""
,您必须编写单引号'
或转义双引号\"
。您选择使用单引号,这很好,除了生成的 JS 代码也必须遵循这些规则。
$('.tags').append('<input type='text' value='+searchTerm+' name='data[Tag][tags]['+searchId+']'');
这里的问题是'<input type='text'...>
。首先,您错过了>
;-) 其次,您必须使用"
或\'
wrap text
。'<input type="text"...>'
没关系。但这会与 PHP 冲突,因为"
它用于 PHP 字符串。因此,您必须逃避双引号:'<input type=\"text\"...>'
.
但说真的,这是一团糟。尝试直接在 HTML 模板中编写 Javascript,它会为您省去很多麻烦。