Это не имеет ничего общего ни с PHP, ни с CodeIgniter.Решение состоит в том, чтобы отправить форму в событии onclick элемента.
<input type="checkbox" name="filterx" onclick="document.forms[0].submit()" />
Вы можете использовать событие OnSubmit формы для удобного форматирования URL, если хотите.
ДляСделав это, вы можете
- получить значения всех нужных элементов,
- построить из него симпатичный URL,
- установить URL с помощью
location.href = yourniceurl
, - отменить обычную отправку, вернув false.
Обратите внимание, что для обоих решений требуется включение javascript.Поэтому хорошо иметь другие способы отправки формы (кнопка «Отправить»).Не полагайтесь на отправку, нажав Enter.Opera будет использовать клавишу Enter для переключения флажка вместо отправки формы.При желании вы можете скрыть кнопку отправки с помощью Javascript, чтобы пользователи с Javascript автоматически отправляли свою форму, а пользователи без нее могли использовать кнопку.Вам нужно убедиться, что ваш валидатор форм на стороне сервера принимает не только симпатичный URL-адрес, но и уродливый URL-адрес (который отправляет такие значения, как ?filterx=on
).