Сервер или сторона КЛИЕНТА Пользовательские элементы управления ASP.Net? - PullRequest
0 голосов
/ 10 марта 2010

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

  • Либо допускаются только числовые символы
  • Или это позволит использовать адрес электронной почты в качестве ввода
  • Или это будет файл Загрузить текстовое поле

Я использую jQuery для проверки этого текстового поля. Например, для проверки, вводил ли пользователь только цифры или нет !!

Мой вопрос

  • Каков лучший подход для создания таких пользовательских элементов управления? Или сделать это чисто клиентской или серверной стороной или и то и другое?
  • Кроме того, мне нужно включить функциональность AJAX в загрузчик файлов. Если клиентский браузер по какой-то причине не поддерживает JavaScripting, то как мы можем избежать этого ограничения? Большое спасибо за уделенное время ! Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 10 марта 2010
  1. Прежде всего вы должны решить, нужны ли вам как клиентские, так и серверные функции для вашего контроля. Это будет зависеть от ваших потребностей. Если вы пишете это как часть большого приложения, я бы предложил использовать оба варианта, потому что им намного легче управлять. Если вы решите, что вам нужны оба варианта, ASP.NET включает в себя именно ту функцию, которую вы ищете. Это называется управлением расширителем. Они позволят вам создать пользовательский элемент управления на стороне сервера и расширить его, чтобы включить некоторые функции на стороне клиента. Вы можете получить больше информации о расширителях здесь .

  2. Изящные отказывающие элементы управления AJAX встречаются редко, большинство разработчиков, создающих элементы управления AJAX, предполагают, что на всех клиентах будет включен JavaScript. Тем не менее, они не так сложно сделать. На самом деле их очень легко сделать, если вы используете ASP.NET AJAX Update Panel. Сама панель обновлений автоматически переключится на полный постбэк, если скрипты JavaScript отключены. Если вы используете пользовательскую реализацию AJAX или jQuery (как вы упоминали выше), вы должны следовать нескольким простым правилам. Прежде всего, избегайте связывания событий внутри скриптов, используйте onclick, onmouseover и т. Д. Таким образом, если ссылка имеет событие onclick и допустимый тег href, если включен JavaScript, вы будете обрабатывать обработчик события onclick, но если они off, вы просто будете следовать значению атрибута href. Для загрузчика вы можете поместить свой загрузчик в элемент FORM и добавить к нему событие onsubmit. Если JS включен, вы будете обрабатывать onsubmit и делать AJAX-вызов для сохранения файла, если JS выключен, вы выполните полную пост-обратную передачу и сохраните файл со стороны сервера.

...