Я загружаю форму динамически в div.При публикации формы с использованием JQuery.post результат должен быть представлен без перезагрузки всей страницы.Но вместо этого содержимое, полученное в ответе, загружается во весь браузер, поэтому на главной странице больше нет меню, логотипов и т. Д.Существует много php-кода, генерирующего контент, и вот, что я думаю, может быть интересным сейчас:
<div id='subscribe_page'>
<div id='sub' class='subscribe'>
<form id='subscribe_now' action='subscription.php' name='subscribe' method='post'>
<p class='formlabel'>Förnamn</p> <input type='text' id='first_name' name='first_name'/><br/>
<p class='formlabel'>Efternamn</p> <input type='text' id='surname' name='surname'/> <br/>
<p class='formlabel'>E-mail</p> <input type='text' id='email1' name='email1'/><br/>
<p class='formlabel'>Repeat e-mail</p> <input type='text' id='email2' name='email2'/> <br/>
<input class='inputsubmit' type='submit' value='Subscribe'/>
</form>
</div>
</div>
<script language='javascript' type='text/javascript' src='jquery-1.6.2.min.js'></script>
<script language='javascript' type='text/javascript'>
$(document).ready(function() {
$('#subscribe_now').submit(function() {
regExp = /^[^@]+@[^@]+$/;
if(($('#email1').val().search(regExp) == -1) || !isEqual($('#email1').val(), $('#email2').val()))
{
alert('Incorrect entered email addresses. They must be valid e-mail addresses and equal.');
return false;
} else{
alert('Posting data' + $('#subscribe_now').serialize());
$.post('subscription.php', $('#subscribe_now').serialize(), function(data) {
$('#subscribe_page').html(data);
alert('Posted data');
});
return true;
}
});
});
</script>"
Все выше загружено в div, принадлежащий главной странице.После публикации я хочу, чтобы данные в ответе были представлены в div subse_page.Но это не так.
Обратите внимание, что предупреждение внутри $ .post не сработало.Тем не менее, предупреждающая строка, предшествующая предыдущему, запускается с таким результатом:
first_name=sertdg&surname=5tghf&email1=niklas%40iandapp.com&email2=niklas%40iandapp.com
.
Я также пытался указать контент, который должен быть возвращен без различий в поведении:
$.post('subscription.php', $('#subscribe_now').serialize(), function(data) {
$('#subscribe_page').html(data);
alert('Posted data');
}, 'html');
В чем может быть проблема и как ее решить?