Я использую превосходный плагин токена * Джеймса Смита для поля поиска. (Бэкэнд PHP.) Я пытаюсь предварительно заполнить ввод, но только в течение некоторого времени, например, если пользователь передал мой URL параметр.
Обычная инициализация:
$("#tokenized").tokenInput("http://www.my.url/index.php", {
theme: "facebook",
});
При желании у меня начинается пустое поле, и все хорошо.
Использование изящного параметра prePopulate:
$("#tokenized").tokenInput("http://www.my.url/index.php", {
theme: "facebook",
prePopulate: [<?php echo json_encode($initialValue); ?>]
});
$ initialValue - это массив с 'id' и 'name'. Это также прекрасно работает, когда он установлен на что-то. Но это моя проблема - только в некоторых случаях это будет установлено. Я попытался отправить ему массив с нулевым элементом, а также массив с пустыми значениями. Установка массива в ноль приводит к ожидаемому необработанному исключению. Ящик отказывается не заполнять заранее, если он один из них - создавая запись для 'undefined' или '{space}'. Я хочу, чтобы он был пустым, как в первом примере выше.
Как мне сказать, чтобы моя страница была предварительно заполнена, только если мое начальное значение установлено? Могу ли я выполнить какое-либо условие if (), встроенное в инициализацию?
Также, начинающий jQuery здесь - как и выше, все еще использующий php echo, чтобы донести мою ценность. Есть ли способ лучше?
Спасибо!