Я использую JQuery + JSON комбинированную что-то вроде этого:представления формы с помощью Jquery
test.php:
<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 your form submitted data.
$arr = array('testDiv' => 'Form is successfully submitted.');
echo json_encode($arr);
?>
jsFile .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":"Form is successfully submitted."}
Пожалуйста help.Thanks в advanvce
У Вас есть ошибка в коде JavaScript. Откройте firebug и нажмите «тормозить на все ошибки», чтобы увидеть, что это за ошибка. Исправьте его, и вам должно быть хорошо идти. –
На вашей странице есть '_test.php', но в вашем описании написано' sms.php' ... что это? :) –
Я не знаю jquery; но я нигде не замечаю, что вы отменяете действие отправки (по умолчанию), поэтому я бы предположил, что он выполняет вашу функцию отправки, а затем продолжает и выполняет обычную отправку. –