1

いくつかの入力、検証ボタン、およびいくつかのリンクを含むページがあります。

次のように動作させたいと思います。ユーザーがリンクをクリックすると、リンクをたどる前にフォームが送信されます(データが保存されます)。

リンククリックイベントでjqueryform.submit()を使用しようとしましたが、データが保存されません。form.submit()の前にevent.preventDefault()を使用すると、データは保存されますが、リンクは開かれず、代わりに送信ボタンのアクションリンクが開かれます。

どうすればこれを行うことができますか?

4

1 に答える 1

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
      }    
     }

});    
});   

});
于 2012-05-11T06:29:19.130 に答える