向div发送表单提交响应

时间:2015-07-24 05:36:14

标签: symfony fosuserbundle

在我提交FOSUserBundle的编辑配置文件表单后,我希望响应转到div。怎么做?我不能通过jquery来做,因为我的偶数处理程序根本没有被调用。响应将作为新页面加载。

$("#user_management").find('form').submit(function(e)
   {
       e.preventDefault(); //STOP default action
       var postData = $(this).serializeArray();
       var formURL = $(this).attr("action");
       console.log('Form clicked.');
       $.ajax(
       {
           url : formURL,
           type: "POST",
           data : postData,
           success:function(data, textStatus, jqXHR) 
           {
               //data: return data from server
               loadDataToTarget(data,textStatus,'targetDiv');
           },
           error: function(jqXHR, textStatus, errorThrown) 
           {
               //if fails      
               console.log('Form submit fail: ' + textStatus);
           }
       });

       //e.unbind(); //unbind. to stop multiple form submit.
   });
   $("#user_management").find('form').submit(); //Submit  the FORM

注意:表单位于user_management div中。当我在调试模式下在javascript控制台上输入上面的整个代码时,该功能非常有效。但是,当我单击提交按钮时,此功能根本没有被触发,整个页面都会重新加载响应。

新信息:当我单击提交按钮时,事件由验证程序处理。此时我希望ajax可以捕获该事件,以便可以通过ajax完成提交。相反,在表单验证之后,Symfony继续提交表单并重新加载整个页面。

有人请告诉我如何让验证器工作,但事件可以被ajax抓住。

1 个答案:

答案 0 :(得分:0)

我没有意识到我必须为新创建的ajax元素添加元素的事件监听器。一旦我这样做,ajax接管了。我现在很好..感谢您为我提供有价值的建议。