Reputation: 29
I'm getting a maximum call stack error and can't figure out why. It's saying jquery and only jquery i'm using is for my ajax....
jquery.min.js:6 Uncaught RangeError: Maximum call stack size exceeded
here is my code
function processPhase3(){
client_info.primary_email = _("emailAddress").value;
client_info.phone = _("cphone").value;
client_info.primary_text = _("cphone").value;
client_info.primary_voice = _("cphone").value;
client_info.hphone = _("cphone").value;
client_info.agree = _("agree");
// if check true
// then check if email or number in the text field
if(client_info.agree.checked == false){
_("alertThree").style.display = "block";
}else{
_("alertThree").style.display = "none";
}
if(client_info.phone.length > 3 || client_info.primary_email.length > 3){
_("alertFour").style.display = "none";
_("phase3").style.display = "none";
_("phase4").style.display = "block";
_("progressBar").classList.remove("progress-bar-success");
_("progressBar").className += ' progress-bar-success';
_("progressBar").style.width = '100%';
_("status").innerHTML = "Congratulations!";
$.ajax({
type: 'POST',
data: client_info,
url: "my_prefs_save.php"
});
}else{
_("alertFour").style.display = "block";
}
}
Upvotes: 1
Views: 1152
Reputation: 29
thanks guys,
looks like adding some return statements fixed the problem ;)
function processPhase3(){
client_info.primary_email = _("emailAddress").value;
client_info.phone = _("cphone").value;
client_info.primary_text = _("cphone").value;
client_info.primary_voice = _("cphone").value;
client_info.hphone = _("cphone").value;
client_info.agree = _("agree");
// if agree check is true - proceed if countOne = 1, false turn on error
// if pn or email exist - proceed countTwo = 1, else turn on error
// then check if email or number in the text field
if(client_info.agree.checked == true){
_("alertThree").style.display = "none";
}else{
_("alertThree").style.display = "block";
return;
}
if(client_info.phone.length > 3 || client_info.primary_email.length > 3){
_("alertFour").style.display = "none";
_("phase3").style.display = "none";
_("phase4").style.display = "block";
_("progressBar").classList.remove("progress-bar-success");
_("progressBar").className += ' progress-bar-success';
_("progressBar").style.width = '100%';
_("status").innerHTML = "Congratulations!";
$.ajax({
type: 'POST',
data: client_info,
url: "my_prefs_save.php"
});
}else{
_("alertFour").style.display = "block";
return;
}
Upvotes: 0