Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
09.09.2016, 12:51
|
|||
|---|---|---|---|
ASP.NET MVC, JavaScript: почему асинхронный запрос срабатывается со второго раза? |
|||
|
#18+
Задам вопрос на примере регистрирования нового пользователя. Допустим надо при регистрировании нового пользователя проверять чтобы не было новых пользователей с одинаковым логином. Этот метод на сервере: Код: c# 1. 2. 3. 4. 5. 6. 7. А вот как воевать на клиенте никак не пойму? Дошла до такого, что добавила отедльное поле для хранения количества переменной. Код: html 1. В процессе проверки всех остальных полей на ввох проверяем поле ввода логина: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. Без использования текстового поля в которое записывается количество пользщователей с таким же логином, функция всё время не правильно работает. А если с использованием текстового поля, то работает с запаздованием на один раз. То есть если в первый раз мы проверяем несуществующий логин. то проверка не проходится, а если второй раз мы протестим существующий или несуществующий логин, то по любому проверка проходится. вот какая-то мелочь, но не понимаю, как её обойти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2016, 15:37
|
|||
|---|---|---|---|
ASP.NET MVC, JavaScript: почему асинхронный запрос срабатывается со второго раза? |
|||
|
#18+
SolomkaЗадам вопрос на примере регистрирования нового пользователя. Допустим надо при регистрировании нового пользователя проверять чтобы не было новых пользователей с одинаковым логином. Под "при регистрировании" что конретно понимается? Момент непосредственного ввода логина? Или ввели логин, и перешли к другому полю? Или ввели все данные и отослали их на сервер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2016, 15:45
|
|||
|---|---|---|---|
ASP.NET MVC, JavaScript: почему асинхронный запрос срабатывается со второго раза? |
|||
|
#18+
Судя по данному коду: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Вы не понимаете что такое асинхронный запрос. В строке 1 Вы вызываете функцию CheckIsExistUserWithThisUserName , внутри которой отправляете запрос серверу для вычисления количества записей в БД с указанным логином. Пока данный запрос идёт на сервер и там обрабатывается, то выполняется код в строках 2, 3, 4. При втором вызове данного кода в поле #countUsersWithThisLogin содержится результат первого запроса и у Вас складывается впечатление, что происходит какое-то запаздываение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2016, 16:40
|
|||
|---|---|---|---|
ASP.NET MVC, JavaScript: почему асинхронный запрос срабатывается со второго раза? |
|||
|
#18+
skyANAСудя по данному коду: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Вы не понимаете что такое асинхронный запрос. В строке 1 Вы вызываете функцию CheckIsExistUserWithThisUserName , внутри которой отправляете запрос серверу для вычисления количества записей в БД с указанным логином. Пока данный запрос идёт на сервер и там обрабатывается, то выполняется код в строках 2, 3, 4. При втором вызове данного кода в поле #countUsersWithThisLogin содержится результат первого запроса и у Вас складывается впечатление, что происходит какое-то запаздываение. Да Вы правы... Как теперь можно выкрутиться? Так чтобы можно было именно делать запрос к серверу на счёт количества записей с таким логином? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2016, 18:12
|
|||
|---|---|---|---|
ASP.NET MVC, JavaScript: почему асинхронный запрос срабатывается со второго раза? |
|||
|
#18+
skyANA, Спасибо, что дали наводку, а то меня переклинило. сделала через new XMLHttpRequest() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2016, 22:44
|
|||
|---|---|---|---|
|
|||
ASP.NET MVC, JavaScript: почему асинхронный запрос срабатывается со второго раза? |
|||
|
#18+
Solomka, just my experience public class PasswordRegisterViewModel { [Remote("IsUsernameUnique", "Validation", "Account")] public string Username { get; set; } ... } in controller public JsonResult IsUsernameUnique([Bind(Prefix = "PasswordRegister.Username")] string username) { if (_membershipService.IsUsernamePersisted(username)) { var msg = string.Format(Messages.USER_WITH_SMTH_SMTH_ALREADY_EXIST, Messages.USERNAME.ToLower(), username); return Json(msg, JsonRequestBehavior.AllowGet); } return Json(true, JsonRequestBehavior.AllowGet); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=18&mobile=1&tid=1355750]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 362ms |

| 0 / 0 |
