Форум программистов, компьютерный форум, киберфорум
Наши страницы
jQuery
Войти
Регистрация
Восстановить пароль
 
tonbar
0 / 0 / 1
Регистрация: 11.05.2013
Сообщений: 1
#1

Как задать переменную в success - jQuery

15.05.2013, 00:41. Просмотров 625. Ответов 1
Метки нет (Все метки)

Ajax запрос, в зависимости от ответа сервера (файл валидации формы ajaxcheck.php), предполагалось возвращать переменную is_need_submit, значение которой определяло бы отправлять форму файлу check.php или просто вывод ошибок. Проблема,что is_need_submit всегда остается false. Кто знает подскажите, в чем проблема задать значение?
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
$(document).ready(function(){
  var is_need_submit = false;    
                  
$("#regform").submit(function() {
  var str = $(this).serialize();
 $.ajax (
   { 
     type: "POST",
     url: "ajaxcheck.php",
     data: str,
     success: function(msg) {
       if ( msg == 'OK' ) {
           is_need_submit = true;
        } else {
           is_need_submit = false;                                   
        }
    } 
   });
  alert('is_need_submit = ' + is_need_submit);
  return is_need_submit;
 
});
 
});

http://www.cyberforum.ru/javascript-jquery/thread2062104.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2013, 00:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как задать переменную в success (jQuery):

Как передать значение оператора this в метод success объекта $.ajax
Здравствуйте друзья! Есть такая задача передать значение оператора this в метод...

Задать свойство объекта через переменную
Добрый день. Есть такой код: $('.sliderBlock .textInput').on("blur",...

сохранить доп. переменную в куках и задать ей потом класс
есть меню многоуровневое. при переходе, позиция сохраняется в куках. как задать...

Как передать переменную окна через текстовую переменную?
Открыл одно окно, потом второе, и хочу передать индетефикатор первого окна во...

Не обрабатывается success
Всем привет, есть форма : <form id="LogonForm" action="" method="post"> div...

1
Soldado
731 / 722 / 137
Регистрация: 28.06.2012
Сообщений: 1,318
Записей в блоге: 4
16.05.2013, 11:30 #2
Всё дело в том, что на выполнение ajax - запроса необходимо некоторое время, а alert выводит, то что есть сейчас , а именно - false.

Считаю, что лучше делать отправку сразу файлу check.php, а уже в этот файл подключить файл ajaxcheck.php
PHP
1
require_once 'ajaxcheck.php';
и отправлять данные на проверку из check.php, например
PHP
1
2
3
4
5
if(!login($login)){
           $messages = 'Логин не соответствует или запрещён!';
           echo $messages;
           return false;
          }
и т.д.
Иначе кто-то в скрипте пропишет
Javascript
1
2
3
4
5
6
7
success: function(msg) {
 msg = 'OK'; // --------------всегда верно
if ( msg == 'OK' ) {
           is_need_submit = true;
        } else {
           is_need_submit = false;                                   
        }
и отключит проверку

В нынешнем виде скрипт такой
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
<script type="text/javascript">
$(document).ready(function(){
  var is_need_submit = false;    
                  
$("#regform").submit(function(e) {
    e.preventDefault();
  var str = $(this).serialize();
 $.ajax (
   { 
     type: "POST",
     url: "ajaxcheck.php",
     data: str,
     success: function(msg) {
       if ( msg == 'OK' ) {
           is_need_submit = true;
        } else {
           is_need_submit = false;                                   
        }
        alert('is_need_submit = ' + is_need_submit);
    } 
   });
  
 
});
 
});
 
</script>
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2013, 11:30
Привет! Вот еще темы с решениями:

Не срабатывает функция success
Доброго времени суток. $('.delete_good_admin').click(function(){ ...

Действие, противоположное success
есть такой скрипт: $(&quot;#add&quot;).validate({ rules: { apartment: {...

Ajax. Не работает success
Здравствуйте. Код в success не хочет работать. Как только выношу его оттуда все...

Ajax success: глюк
$.ajax( { url: 'login', type:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru