Можно ли обновить только один элемент на странице с загрузкой jQuery, не создавая для этого отдельный метод GET на стороне сервера? - PullRequest
0 голосов
/ 06 апреля 2010

Мне нужно обновить один элемент на странице с помощью Ajax, нужно ли вносить изменения на стороне сервера или можно загрузить целую страницу с помощью jquery, а затем обновить только один элемент?

Ответы [ 2 ]

1 голос
/ 06 апреля 2010

Вам не нужно, и это возможно, но я бы сказал, что вы не должны. Одним из преимуществ AJAX является то, что вы извлекаете фрагмент с сервера, и, следовательно, получаете меньшую полезную нагрузку. Если вы снова тянете всю страницу, она выполнит все запросы к базе данных, многие из которых будут не связаны с вашим элементом.

Вы также снова запросите все CSS / JS, весь текст и т. Д.

Я бы сделал отдельную страницу для отдельного фрагмента и запросил бы это через AJAX и обновил бы элемент только возвращенным результатом.

Однако вы можете сделать это, и jQuery предоставляет это с помощью метода загрузки:

http://api.jquery.com/load/

Загрузка фрагментов страницы

Метод .load (), в отличие от $ .get (), позволяет нам указать часть удаленного документа для вставки. Это достигается с помощью специального синтаксиса для параметра url. Если в строку включен один или несколько пробельных символов, предполагается, что часть строки, следующая за первым пробелом, является селектором jQuery, определяющим загружаемый контент.

0 голосов
/ 06 апреля 2010

Load извлечет данные с сервера и поместит HTML-код в ваш элемент. Таким образом, запись, как это будет обновлять только элемент div1

$("#div1").load('http://yourserver/page.html');

См. нагрузка

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