Как следует из названия, у меня возникают проблемы с сохранением кода при обратной передаче. У меня есть куча кода jQuery в разделе Head, и он отлично работает, пока не произойдет обратная передача, после чего он перестанет работать!
Как я могу это исправить? Не читается ли голова при обратной передаче, и есть ли способ заставить это произойти?
JavaScript это:
<script type = "text/javascript">
$(document).ready(function()
{
$('.tablesorter tbody tr').tablesorter();
$('.tablesearch tbody tr').quicksearch({
position: 'before',
attached: 'table.tablesearch',
stripeRowClass: ['odd', 'even'],
labelText: 'Search:',
delay: 100
});
});
</script>





Если у вас просто есть этот код, жестко закодированный в голове вашей страницы, то ответная публикация не повлияет на нее. Я бы проверил следующее при отладке (FireBug в FireFox - хороший отладчик):
Обновлено: Вы используете UpdatePanels для своего сообщения? Другими словами, это асинхронная обратная передача или обычное обновление полной страницы?
РЕДАКТИРОВАТЬ Обновлено: Аааа ... Хорошо. Итак, если вы используете UpdatePanels, тогда состояние готовности документа уже находится в состоянии готовности, поэтому эта часть кода jquery не будет запущена снова. Я бы выделил делегат jquery в отдельную функцию, которую вы также можете вызвать после асинхронной обратной передачи.
Я предполагаю, что обратная передача предшествует событию onLoad страницы, которое jQuery необходимо подключить, чтобы использовать его .ready ().
alert('test');Вместо использования $ (document) .ready вы должны поместить свой код в функцию с именем pageLoad (). Функция pageLoad () по соглашению вызывается всякий раз, когда страница имеет обратную / асинхронную обратную передачу.
поместите свой код в
function pageLoad(sender, args) {
/* code here */
}
вместо $(document).ready(function() { ... });
pageLoad() - это функция, которая будет выполняться после всех обратных передач, синхронных и асинхронных. См. Этот ответ для получения более подробной информации.