У меня есть таблица данных, и я хочу, чтобы пользователь мог щелкнуть заголовок столбца и отправить не-AJAX-запрос, который перезагружает страницу с данными, отсортированными по этому столбцу.
Я мог бы просто сделать заголовок столбца ссылкой, но Я хочу, чтобы они могли щелкнуть в любом месте заголовка столбца , поэтому я добавил скрытые формы и пытаюсь использовать jQuery для отправки форма при нажатии на заголовок столбца.
Проблема, с которой я сталкиваюсь, заключается в том, что хотя работает точно так, как и ожидалось для заголовка второго столбца - щелчок передает скрытую форму и перезагружает страницу - но не работает все для первого заголовка столбца - форма не отправляется.
Что удерживает форму первого столбца от отправки?
Есть ли лучший способ сделать это, чем использовать скрытую форму?
HTML:
<th class='sortable'>
<form action='/procurements' class='sort_form' method='get'>
<input name='sort' type='hidden' value='title' />
</form>
Title
<img class='sort_indicator' src='/images/sort_unsorted.jpg' />
</th>
<th class='sortable'>
<form action='/procurements' class='sort_form' method='get'>
<input name='sort' type='hidden' value='nature' />
</form>
Procurement type
<img class='sort_indicator' src='/images/sort_unsorted.jpg' />
</th>
JS:
$(document).ready(function(){
$('table.tgr_datagrid th.sortable').click(
function() {
$(this).children( 'form' ).submit();
}
);
});