Я искал в Интернете, как заставить веб-форму работать внутри FancyBox. Форма отображается правильно, но когда я нажимаю «Отправить», она отправляет и добавляет строку в базу данных, но все пусто (это означает, что данные на самом деле не добавляются). В дополнение к этому, он не показывает ответ, чтобы сказать, было ли сообщение отправлено в лайтбокс или нет. Я рассмотрел другие вопросы, подобные этому, и обнаружил, что AJAX используется для его отправки. Я никогда раньше не использовал AJAX, поэтому я не уверен, что не так. Я также использовал FireBug, и он не показывает передачу данных.
Код для формы:
<div style="display: none">
<div id="contact">
This form will allow you to contact our staff support team. This can be used to request ban reversals, login problems, etc. Just note, all responses will be sent via e-mail.<br />Be sure you leave us a valid e-mail and to be sure you check this email often and to check your spam folders if you do not receive a response.<br /><br /><center>
<form action="" method="post" id="contactus">
Your Name: <input type="text" STYLE="color: black; background-color: white;" name="name" value="" /><br />
Your Email: <input type="text" STYLE="color: black; background-color: white;" name="email" value="" /><br /><br />
Your Message: <br /><br /><textarea rows="10" cols="70" STYLE="color: black; background-color: white;" name="textarea" value=""></textarea><br /><br />
<input type="submit" STYLE="color: black; background-color: white;" value="Submit Message" /> </form><br /></center>
</div>
</div>
Вот функция AJAX
<script type="text/javascript">
$(document).ready(function() {
$(".fancybox").fancybox();
});
</script>
$("#contact").bind("submit", function() {
$.fancybox.showActivity();
$.ajax({
type : "POST",
cache : false,
url : "outsidesupport_processed.php",
data : $(this).serializeArray(),
success :function(data){
$.fancybox(data);
}
});
return false;
});
});
</script>
Добавить данные отладки
Оповещение (данные); в успехе
success :function(data){
$.fancybox(data);
alert(data);
}
Есть ли ошибки?
Это синтаксическая ошибка:
</script>
$("#contact").bind("submit", function() {
проверять
var test = $ (this) .serializeArray ();
если тест не нулевой, возможно, ошибка здесь outsidesupport_processed.php
Других решений пока нет …