【问题标题】:submit form before following clicked link在点击链接之前提交表格
【发布时间】:2012-05-11 06:22:50
【问题描述】:

我有一个页面,其中包含一些输入、一个验证按钮以及一些链接。

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

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

我该怎么做?

【问题讨论】:

  • 尝试使用 e.preventDefault() 然后提交表单,然后点击链接。我会用一个例子来回答

标签: php jquery symfony


【解决方案1】:

您需要使用 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
      }    
     }

});    
});   

});

【讨论】:

  • 如果您需要帮助通过 ajax 保存表单,请在此处评论
  • 这是我本来想出来的,后来脑子里放了个屁,哈哈
猜你喜欢
  • 1970-01-01
  • 2020-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-28
  • 1970-01-01
相关资源
最近更新 更多