jQuery это фантастика!Это ускоряет разработку на стороне клиента, а многочисленные плагины доступны практически для любых нужд.Использование jQuery с Asp.NET Web-Forms ухудшается при работе с вложенными серверными элементами управления.ClientID добавляются при использовании главных страниц ASP.NET.Объекты в JavaScript имеют тенденцию выглядеть следующим образом: ctl00_m_g_aaf13d41_fc78_40be_81d5_2f40e534844f_txtName Сложность проблемы, описанной выше, заключается в том, что для получения элемента txtName необходимо знать полный «путь».Довольно неприятно ссылаться на объект, используя следующий метод: document.getElementByID ('ctl00_m_g_aaf13d41_fc78_40be_81d5_2f40e534844f_txtName');Это становится большой проблемой при разработке серверных элементов управления или веб-частей, которые могут использоваться в типичном приложении ASP.NET или SharePoint.Вы не можете жестко закодировать путь выше, если не знаете полного пути элемента управления.
К счастью, есть несколько способов обойти это.Есть три, в частности, я упомяну.Первый - это jQuery, эквивалентный стандартному методу JavaScript: document.getElementById ("<% = txtName.ClinetID%>"); "); это можно сделать в jQuery с помощью: $ (" # '<% = txtName.ClinetID%> ");");Второй метод jQuery не требует серверных тегов.Этот метод просматривает все теги и ищет элемент, заканчивающийся указанным текстом.Код jQuery для этого метода показан ниже: $ ("[id $ = '_ txtName']");Есть, конечно, недостатки обоих методов выше.Первый быстрый, но требует тегов сервера.Это быстро, но выглядит просто грязно.Кроме того, он не будет работать с внешними файлами сценариев.Второй вариант - чистый, но он может быть медленным.Как я уже говорил ранее, есть несколько других альтернатив, но именно эти две я использую чаще всего.
Третий регистратор Javascript в коде C # позади.