$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'...>
.Во-первых, вы пропустили >
;-) Во-вторых, вы должны использовать "
или \'
для переноса text
.'<input type="text"...>'
все в порядке.Но это противоречило бы PHP, так как "
использовалось для строки PHP.Для этого вам нужно избежать двойных цитат: '<input type=\"text\"...>'
.
А если серьезно, , это беспорядок.Попробуйте написать Javascript прямо в HTML-шаблоне, это избавит вас от головной боли.