Я использую комбинацию jQuery + JSON примерно так:
test.php:
<script type="text/javascript" src="coupon.js"></script>
<form action='_test.php' method='post' class='ajaxform'>
<input type='text' name='txt' value='Test Text'>
<input type='submit' value='submit'>
</form>
<div id='testDiv'></div>
_test.php:
<?php
// Code here to deal with form submitted data.
$arr = array( 'testDiv' => 'Form is successfully submitted.' );
echo json_encode( $arr );
?>
coupon.js:
jQuery(document).ready(function(){
jQuery('.ajaxform').submit( function() {
$.ajax({
url : $(this).attr('action'),
type : $(this).attr('method'),
dataType: 'json',
data : $(this).serialize(),
success : function( data ) {
for(var id in data) {
jQuery('#' + id).html( data[id] );
}
}
});
return false;
});
});
Теперь я хотел, чтобы при отправке успешной формы без обновления страницы сообщение отображалось в div testDiv.
Я надеялся, что этот скрипт поможет, но при отправке формы страница переходит на ... / _ test.php и отображает пустую белую страницу, за исключением следующего:
{"testDiv": "Форма успешно отправлена."}
Firebug не сообщает ни об одной ошибке ни с одним из сценариев . Пожалуйста, помогите. Спасибо за преимущество
То же самое можно увидеть в http://174.132.194.155/~kunal17/devbuzzr/deals/5-discount-on-all-guitars. Нажмите ссылку " получить купон " и затем нажмите отправить во всплывающем окне.