ASP.NET Webforms с jQuery?

Я Могу избежать использование MS AJAX полностью при разработке ASP.NET Webforms приложений и использовать инструменты jQuery/jQuery вместо этого?

jQuery, кажется, намного быстрее, имеет лучшее сообщество, очень маленький размер файла (24kb). Это также кажется очевидным выбором для ASP.NET MVC развитие.

но как насчет Webforms? Я бы предпочел не использовать инструменты AJAX, поставляемые с Visual Studio 2010. может ли jQuery предоставить мне все, что элементы управления AJAX по умолчанию должны предложить?

спасибо!

4 ответов


можете ли вы использовать jQuery с webforms? Да, это не проблема - в конце концов, вся настройка webforms генерирует веб-страницы HTML, и, следовательно, jQuery может манипулировать ими.

может ли jQuery предоставить все, что предоставляют элементы управления AJAX по умолчанию-hmmm, да в теории, потому что в конечном итоге все, что они делают, - это a) манипулирование DOM и b) выполнение из диапазона вызовов на сервер. На практике вы собираетесь отказаться от некоторой простоты использования, и вам придется сделать это больше работай сам.

самая большая проблема-по крайней мере, с приложениями, запущенными до .NET 4.0 - заключается в том, что идентификаторы, созданные для серверных элементов управления, интересны. Если вы можете делать все, что вам нужно в jQuery без ссылки на идентификатор элемента управления (если вы можете использовать классы или искать контроль типов) ты далеко и работает, но если вы должны быть четко идентификатор вы собираетесь подчеркнуть, если вы можете использовать .Net версии 4.0

У меня есть код, который смешивает биты двух (динамические данные сайты, которые используют календарь jQueryUI как его намного лучше, чем инструментарий) и, безусловно, рассмотрят использование большего количества jQuery в приложениях forms.


да. Вы можете. Но вам нужно использовать много плагинов jquery для разных функций.

в одном из наших проектов (asp.net webforms), первоначально мы используем MS Ajax. Теперь мы медленно продвигаемся к jQuery с успехом.


Это зависит от требуемой модели разработки. jQuery требует использования веб-служб для связи, в то время как MS AJAX может работать с неявными обратными связями. Хотя последнее удобно для быстрого развития, использование веб-сервисов для передачи данных является лучшей практикой.

большинство элементов управления MS AJAX можно имитировать с помощью различных библиотек jQuery.


короткий ответ: да. И в качестве ответа железными лапами намекает на Майкрософт одобряет это.

единственный gotcha заключается в том, что, как вы, вероятно, знаете, с Webforms вы не можете контролировать, какой идентификатор на стороне клиента ваши элементы управления получат, делая выбор через $('#id') громоздким.

Я обычно обходил это с помощью классов css для выбора или получения свойства ClientID элементов управления в codebehind, когда это необходимо (например, когда мне нужно ссылаться на динамически созданный управление в ретрансляторе).