Скрипт не срабатывает с первого раза
Доброго времени суток.
Следующий скрипт не всегда срабатывает при первом же обращении к нему. Вот код скрипта : function profile_info_change() { var fullname = document.getElementById("fullname").value, oldpassword = document.getElementById("old_password").value; password = document.getElementById("password").value; password2 = document.getElementById("password2").value; about = document.getElementById("about").value; $.ajax({ type: "POST", url: "profile_info_changer.php", data: {fullname: fullname, oldpassword: oldpassword, password: password, password2: password2, about: about }, success: function(msg){ $('#error').append(msg); } }); } |
Mateus, во-первых, раз уж вы используете jQuery, тогда его следует использовать на полную катшку:
fullname = $("#fullname").val() Во-вторых, следует прочитать про локальные переменные. function profile_info_change() { var fullname = document.getElementById("fullname").value,//Эта переменная находится в зоне видимости ф-ции profile_info_change oldpassword = document.getElementById("old_password").value; //Эта тоже password = document.getElementById("password").value; //А эта уже нет. Это свойство объекта window, глобальная переменная, грубо говоря //... } И, наконец, вы не привели условия, при которых вызывается данная функция. Без них нельзя понять, что идет не так. |
Без HTML кода тяжело понять, по-этому и получилось недопонимание.
Данная функция вызывается из формы: <input type=submit class="black_box" onclick="profile_info_change();""> Про переменные - спасибо, исправил. Но все эти переменные являются локальными, т.е. попадают через форму в js, потом php (глобальные попадают уже в обработчик php через сессию) |
Предполагаю, что "ошибка", а точнее неверное условие, находится в обработчике php.
|
Часовой пояс GMT +3, время: 01:34. |