Если вы посмотрите здесь (почему вы используете '?' В конце URL?), Вы увидите
[]<option value="">Choose an option..</option><option value="md_assignment">Assignment</option><option value="md_camera">Camera</option><option value="md_film">Film</option><option value="md_film_condition">Film_condition</option><option value="md_filmformat">Filmformat</option><option value="md_filmtype">Filmtype</option><option value="md_framemaker">Framemaker</option><option value="md_lab">Lab</option><option value="md_lens">Lens</option><option value="md_owner">Owner</option><option value="md_paper">Paper</option><option value="md_scanner">Scanner</option>
Первые []
символы камеры создают проблемы.
Более того, я не понимаю, зачем вам нужен идентификатор сеанса PHP, чтобы страница и все URL-адреса HTTP GET работали.
ОБНОВЛЕНО: Я не использую PHP сам, поэтому не могу дать вам никаких советов, почему у вас есть []
в начале ответа вашего сервера, но это пустой массив JSON
. Соответствующий ответ содержит Content-Type: application/json
в заголовке HTML и код
$.get(getSelectFilterUrl, function(data) {
var res = $(data).html();
$('select#column').html(res);
});
попытаться автоматически интерпретировать данные как данные JSON. Вы получаете сообщение об ошибке, и функция «успех» не будет работать. Вы можете проверить это, если замените $.get
на $.ajax
с обработчиком событий success
и error
. jqGrid использует complete
обработчик событий вместо success
и error
. В дескрипторе complete
преобразование данных не будет. Вот почему у вас нет проблем с первым выбором.
Использование $.ajax
с обработчиком событий complete
может быть для вас обходным путем, но я настоятельно рекомендую вам проверить код вашего сервера, удалить Content-Type: application/json
для соответствующего ответа сервера и устранить проблему с []
символы.