Как сделать отправку Zend_Form без перезагрузки страницы - с помощью Ajax?
Это код для создания формы, которая перезагружает страницу после отправки, что нужно изменить или добавить, что эта форма будет отправлена с помощью ajax (1.регулярное решение 2.jquery решение):
Форма:
class Application_Form_Login extends Zend_Form
{
public function init()
{
$username=new Zend_Form_Element_Text('username');
$username ->addFilter('StringToLower')
->addValidator('alnum');
$password=new Zend_Form_Element_Text('password');
$password->addFilter('StringToLower')
->addValidator('alnum');
$submit=new Zend_Form_Element_Submit('submit');
$this->addElements(array($username,$password,$submit));
}
}
Контроллер:
$form = new Application_Form_Login();
$request = $this->getRequest();
if ($request->isPost()) {
if ($form->isValid($request->getPost())) {
if ($this->_process($form->getValues())) {
//code indside
}
}
}
$this->view->form = $form;
Просмотр:
<?
echo $this->form;
?>
Мое предложение, которое я не считаю правильным (выполняет ли форма фильтрация и проверка?) Для Просмотр :
<?
echo $this->form;
?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('form').submit(function(){
var sendData=$(this).serialize();
$.ajax(
{
url:'',
dataType:'json',
type:'POST',
data:sendData,
success: function(data) {
}
});
return false;
});
});
</script>
Спасибо