jQuery 1.6.3 проблема флажков при встроенном редактировании в jQgrid - PullRequest
2 голосов
/ 09 сентября 2011

Я только что обновил jQuery с 1.6.2 до 1.6.3 и обнаружил, что встроенное редактирование не работает должным образом после этого изменения.

У меня есть флажки, и если я сниму флажок (значение true переключено наfalse) и нажмите «Сохранить», значение этого флажка размещено как true на контроллере, но реальное значение должно быть false, потому что я это изменил.Также, если значение было «ложно» (флажок снят) и я изменил его на «проверено» (true), оно работает таким образом.Так что я не работаю только от проверенного до непроверенного (когда я снимаю флажок, значение true всегда публикуется на сервере вместо «false»).

Когда я вернулся к jQuery 1.6.2, все работало, как и раньше, никаких проблем с флажками не было.

Моя версия jQGrid 4.1.2.

Это ошибка с jQuery1.6.3

1 Ответ

2 голосов
/ 09 сентября 2011

Спасибо за вопрос!В одном проекте для моего основного клиента работа с флажком очень важна.Таким образом, я немедленно воспроизвел проблему.Мое первое исправление ошибки следующее:

нужно изменить строку 133 (в версии 4.1.2) grid.inlinedit.js или строку 8283 jquery.jqGrid.src.js с

tmp[nm]=  $("input",this).attr("checked") ? cbv[0] : cbv[1];

до

tmp[nm]=  $("input",this)[0].checked ? cbv[0] : cbv[1];

Я думаю, что нужно изучить код jqGrid для большего количества мест, где работают с флажками, но быстрое исправление, описанное выше, по крайней мере, решает проблему во встроенном редактировании, котороеты описал.Позже я рассмотрю проблему более тщательно и опубликую свои предложения в trirand (для разработчика jqGrid).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...