2016-11-11 8 views
1

せずにフォームのURLを取得する - 私が傍受する必要がある - これは簡単なもの...基本的にそれはjQueryのまたはJavaScriptに来るとき、私は初心者です提出

であれば、私はGETのフォームを持って謝罪ので、つまり、実際にフォームを送信する代わりに、送信ボタンを押したときにjavascriptを呼び出す必要があります。それは希望かのように基本的に、私はURLを処理するために、フォームを

必要 - 私はフォームを

http://server/cgi-bin/status.py?val=1223&val2=434334&val3=4343 

... ...出力として何かのように完全なURLを持っていると思います提出するが、提出しない。主な要件は、彼らが

おかげで、 プリンス

+0

を?これはあなたのフォームのフィールドですか? – mrid

+0

こんにちは、ようこそ。私はあなたがこのグループからより良い結果を得るためにこのリンクを見直したいかもしれないと思います。 http://stackoverflow.com/help/how-to-ask –

答えて

1

フォームをjavascriptで処理して送信しないようにするには、ユーザーが送信ボタンを押したときにフォーム上で発生するsubmitイベントでリスナーを追加する必要があります。単にあなたのフォーム要素にid属性を追加します。

<form method="get" id="myForm"> 
... 
</form> 

その後リスナーを追加:URLは何

<script> 
$(function(){ 
    $("#myForm').on('submit', function(event) { 
     event.preventDefault(); // This line prevents the normal behaviour of the submit button 

     var queryString = $(this).serialize(); // This will generate a query string like so : "val=1223&val2=434334&val3=4343" 

     var url = "http://server/cgi-bin/status.py?" + queryString; // Now you have the full URL 

     // Then you can send an AJAX request to a server-side script that will send the mail 
     $.ajax({ 
      url: 'http://server/cgi-bin/email.py', // Your e-mailing script 
      method: 'POST', // or GET whatever 
      data: { 
       url: url, 
       email: '[email protected]' 
      }, 
      ... 
     }) 

    }) 
}) 


</script> 
+0

OPは、URLがpath_to_the_script + query_stringであることを望みます。あなたのコードは現在のドキュメントのURLを返します+ query_string –

+0

True!すぐに投稿を編集します –

1

は、これは、この

$('form').on('submit', function(event) { 
    var url = '<insert-path-to-desired-script>?' + $(this).serialize(); 

    event.preventDefault(); 
}); 

のようなもので行うことができます。このリンクを使用してジョブの進行状況を追跡できるように、顧客にこのリンクバイアルメールを送信することですevent.preventDefault()は、フォームが実際に送信されないことを確認します。

urlには、すべてのフォームプロパティを含む完全なURLが含まれています。

+0

OPは、URLがpath_to_the_script + query_stringであることを望んでいます。あなたのコードは、現在のドキュメントのURLを返します+ query_string –

関連する問題