У меня проблема с вызовом jQuery ajax. Если я прокомментирую вызов ajax, он работает. Он проходит все проверки и переходит к другому, у которого есть вызов ajax. если я добавлю предупреждение, комментируя вызов ajax, он работает нормально и показывает предупреждение.
ошибка в консоли: Uncaught RangeError: превышен максимальный размер стека вызовов.
function submit() {
var companyname = $('#companyname').val();
var fname = $('#fname').val();
var username = $('#email').val();
var countrycode = $('#country-code').val();
var mobile = $('#mobile').val();
var captcha = $('#captcha').val();
var countryid = $('#country-list').val();
var ctype = $('#ctype').val();
console.info(companyname);
console.info(fname);
console.info(username);
console.info(countrycode);
console.info(mobile);
console.info(captcha);
console.info(countryid);
console.info(ctype);
if (companyname == '') {
Swal.fire({
title: 'Enter Company Name',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (fname == '') {
Swal.fire({
title: 'Enter Admin Name',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (username == '') {
Swal.fire({
title: 'Enter Admin Email',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (countrycode == '') {
Swal.fire({
title: 'Select Country Code',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (mobile == '') {
Swal.fire({
title: 'Enter Admin Mobile',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (captcha == '') {
Swal.fire({
title: 'Enter Captcha',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (countryid == '') {
Swal.fire({
title: 'Select Country',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else {
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>Home/createcsoorpartner_submit",
data: {
companyname: companyname,
fname: fname,
countryid: countryid,
mobile: mobile,
email: email,
countrycode: countrycode,
captcha: captcha,
ctype: ctype,
},
success: function (data) {
resultObj = $.parseJSON(data);
console.info(resultObj);
if (resultObj.result == "success") {
Swal.fire({
title: resultObj.msg,
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
}).then(function (result) {
if (result.value) {
window.location = "<?php //echo base_url(); ?>Home";
}
})
} else {
Swal.fire({
title: resultObj.msg,
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
}
}
})(1);
}
}
Нет, я пытался распечатать значения сообщений. но он также не вызывает этот URL. публичная функция createcsoorpartner_submit() { print_r('привет');
data: {companyname: "" } передать только это в данные, а затем проверить, достигает ли он контроллера. В контроллере. Сделайте эхо, чтобы увидеть, достиг ли он пути
хорошо. я проверю
да, это работает, если я публикую только название компании
Итак, проблема в данных, которые вы передаете. Зайдите внутрь части else и в console.info все передаваемые значения. Посмотрите, не пропал ли кто-нибудь из них
В консоли я получаю все значения, которые я передал. Pro Tech One Nazeer [email protected] 91 7897897891 x09mw 812 Clinic_Admin
попробуйте исключить одно из значений одно за другим и проверьте, работает ли оно. У Ajax возникают проблемы с одним значением данных.
с параметром электронной почты я получаю эту проблему. вместо имени пользователя я отправляю его в ajax по электронной почте. Теперь эта проблема была исправлена. но в ctype я получаю пустое значение в контроллере. но в консоли я получаю значение.
Где ваша переменная электронной почты? Я не могу найти переменную электронной почты в вашем коде. Вы используете переменную имени пользователя для поля электронной почты. просто передайте имя пользователя вместо переменной электронной почты, и это должно работать
да его работа хорошая. но в ctype я получаю пустое значение в контроллере. перед ajax в консоли я получаю правильное значение.
Показать сс ответа в контроллере.
сейчас работает хорошо. большое спасибо за помощь
Хорошо, отлично, если это было полезно, примите ответ и проголосуйте.
Было бы очень полезно, если бы вы могли принять ответ
function submit() {
var companyname = $('#companyname').val();
var fname = $('#fname').val();
var username = $('#email').val();
var countrycode = $('#country-code').val();
var mobile = $('#mobile').val();
var captcha = $('#captcha').val();
var countryid = $('#country-list').val();
var userrole = $('#ctype').val();
if (companyname == '') {
Swal.fire({
title: 'Enter Company Name',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (fname == '') {
Swal.fire({
title: 'Enter Admin Name',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (username == '') {
Swal.fire({
title: 'Enter Admin Email',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (countrycode == '') {
Swal.fire({
title: 'Select Country Code',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (mobile == '') {
Swal.fire({
title: 'Enter Admin Mobile',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (captcha == '') {
Swal.fire({
title: 'Enter Captcha',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else if (countryid == '') {
Swal.fire({
title: 'Select Country',
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
} else {
console.info(companyname);
console.info(fname);
console.info(username);
console.info(countrycode);
console.info(mobile);
console.info(captcha);
console.info(countryid);
console.info(userrole);
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>Home/createcsoorpartner_submit",
data: {
companyname: companyname,
fname: fname,
countryid: countryid,
mobile: mobile,
email: username,
countrycode: countrycode,
userrole: userrole,
captcha: captcha,
},
success: function (data) {
var resultObj = $.parseJSON(data);
console.info(resultObj);
if (resultObj.result == "success") {
Swal.fire({
title: resultObj.msg,
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
}).then(function (result) {
if (result.value) {
window.location = "<?php //echo base_url(); ?>Home";
}
})
} else {
Swal.fire({
title: resultObj.msg,
width: 500,
padding: '1em',
background: '#fff',
backdrop: `
rgba(0,0,123,0.4)
left top
no-repeat
`
})
}
}
});
}
}
Вы получаете ошибку, которая $.ajax
будет генерироваться, если вы попытаетесь передать структуру, содержащую циклические ссылки.
Если тип определения данных неверен, данные не могут быть успешно отправлены в фоновый режим. Фон не получает данные, внешний интерфейс всегда будет отправлять, и этот цикл приводит к переполнению стека.
Поэтому все, что вам нужно сделать, это проверить правильность параметров, которые вы отправляете в ajax.
Вы получаете все значения в вашем контроллере?