Я серьезно не могу понять, что здесь происходит! Jquery вообще не работает! Скрипт генерируется и все. но когда я нажимаю на кнопку отправки, это происходит так же, как и без jquery и ajax.
Пожалуйста помоги ! Благодарю.
Вот мой, Контроллер:
class MessagesController extends AppController{
public $helpers=array('Js'=>array('Jquery'));
public $components = array('RequestHandler');
public function index(){
if(!empty($this->data)){
if($this->Message->save($this->data)){
if($this->RequestHandler->isAjax()){
$this->render('success','ajax');
$this->Session->setFlash('Ajax');
}
}
}
}
}
?>
и вот мой взгляд:
<?php echo $this->Html->script('jquery',FALSE); ?>
<?php
echo $this->Form->create();
echo $this->Form->input('name',array('id'=>'id'));
echo $this->Form->input('email',array('id'=>'email'));
echo $this->Form->input('message',array('id'=>'message'));
echo $this->Js->submit('Submit',array(
'before'=>$this->Js->get('#sending')->effect('fadeIn') ,
'success'=>$this->Js->get('#sending')->effect('fadeOut'),
'update'=>'#success'
));
echo $this->Form->end();
?>
<div id="sending" style="display:none;background-color:green" >Sending...</div>
<div id="success"></div>
Это генерируемый файл javascript,
$("#submit-84782947").bind("click", function (event) {$.ajax({beforeSend:function (XMLHttpRequest) {$("#sending").fadeIn();}, complete:function (XMLHttpRequest, textStatus) {$("#sending").fadeOut();}, data:$("#submit-84782947").closest("form").serialize(), dataType:"html", success:function (data, textStatus) {$("#success").html(data);}, type:"post", url:"\/Cake\/messages"});
return false;});
Как я заметил, в файле сгенерированного файла нет $ (document) .ready, может ли это быть проблемой?