在点击链接之前提交表单

时间:2012-05-11 06:22:50

标签: php jquery symfony

我有一个带有一些输入的页面,一个验证按钮以及一些链接。

我希望有以下行为:当用户点击链接时,表单会在跟踪链接之前提交(数据已保存)。

我尝试在链接点击事件上使用jquery form.submit(),但数据未保存。 如果我在form.submit()之前使用event.preventDefault(),则会保存数据,但不会打开链接,而是打开提交按钮的操作链接。

我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

您需要使用Ajax来实现此功能

<a href="somepage.html" class="link">Link</a>

$(document).ready(function(){
$('.link').click(function(e){

var href = $(this).attr('href');
e.preventDefault();
//do ajax for saving the data-- refer jquery ajax

$.ajax({
      url:'your form action',
      type:'post',
      data:anydata to send
     success:funtion(msg){ //return a value ok if form saved or fail if form not saved
    if(msg == 'ok'){
    location.href = href; //just redirect
      }    
     }

});    
});   

});