Я раздел всю логику из моего JQuery плагин для этого вопроса, но моя проблема в том, что, когда я называю функцию checkValidationName, он делает это дело и устанавливает имя = истину. Затем, когда я пытаюсь сравнить его сразу после того, как я его назвал, значение false. Почему это?JQuery плагин функция возвращает значения
(function($){
$.fn.validate = function() {
var name = false;
$('.submitBtn').click(function() {
$.fn.validate.checkValidationName(nameValues);
**console.log("name = "+name); **//but this prints out "false"****
//shouldn't this be true since name returned true in the actual function??
}
});
$.fn.validate.checkValidationName = function(id) {
$.post("PHP/submitButtonName.php", {checkValidation: id},
function(data) {
**console.log("name = "+name); **//this prints out "true"****
//name is equal to true here
}, "json");
};
}
})(jQuery);
Есть ли способ сохранить значение имени и использовать его в другой функции? У меня есть 3 функции, похожие на checkValidationName, все с использованием разных переменных, и я хочу сравнить все переменные и выполнить операцию, если все три прохода действительны, а не только один. – Catfish
Вы можете сделать что-то вроде http://pastie.org/817909. Если вам нужно что-то делать, если не все, действительно, вам нужно следить, сколько раз был назван doStuffIfAllValid(). – jou