#php #jquery #wordpress
#php #jquery #wordpress
Вопрос:
Пытаюсь создать плагин для wordpress, который использует jquery:
echo "$('#datepicker').datepicker({ ..... ";
# работает как комментарий, я пытался #
остановить это, но это не сработало. Есть идеи?
Код:
$dispWidget = $dispWidget.'<script type="text/javascript">';
$dispWidget = $dispWidget.'$(function() {";
$dispWidget = $dispWidget."$('#datepicker').datepicker({";
$dispWidget = $dispWidget."changeMonth: true,";
$dispWidget = $dispWidget."changeYear: true,";
Комментарии:
1. Не могли бы вы опубликовать весь свой код, пожалуйста. Всего несколько строк
2. если она находится в середине
"
цитаты, ее не следует анализировать как комментарий3. Должно быть, проблема в другом месте, это работает нормально: ideone.com/iTbnc
4. $dispWidget = $dispWidget.'<тип сценария =»текст / javascript»>’; $dispWidget = $dispWidget.’$(функция() {«; $dispWidget = $dispWidget.»$(‘#datepicker’).datepicker({«; $dispWidget = $dispWidget.»Месяц изменений: истина»; $dispWidget = $dispWidget.»Год изменений: истина».;
5. вызывает ошибку синтаксического анализа: синтаксическая ошибка, неожиданный T_VARIABLE
Ответ №1:
Если ошибка «Ошибка синтаксического анализа: непредвиденная T_VARIABLE», проблема на самом деле связана со знаком доллара.
Чтобы исправить это, используйте одинарные кавычки в ваших строках PHP и двойные кавычки в вашем JavaScript.
echo '$("#datepicker").datepicker({ ..... ';
Одинарные кавычки также лучше подходят для повышения производительности.
Ответ №2:
Что на самом деле происходит, так это:
Вы открываете одинарную кавычку, затем закрываете ее (когда вы просто хотите добавить ее в строку), а затем добавляете хэш, вот так:
'..stuff..'#other stuff'
Чего вы хотели, так это:
'..stuff..'#other stuff'
Эта одинарная кавычка должна быть экранирована обратной косой чертой, чтобы рассматриваться как символ вместо закрывающей кавычки.
Комментарии:
1. это выдает ошибку: Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный T_VARIABLE
2. Неважно, вы были правы, проблема заключалась в том, что в предыдущей строке не было подходящих кавычек.