2

私は<input>ページ上にランダムな名前でいくつかのsを生成します(一度にほぼ10)。

それらを提出することについての質問で立ち往生。

私はこのコードを使用して送信します:

$('.table_data').submit(function(event)
{
    event.preventDefault();
    // some validation check and then

    $.post(url, {user_mail: mail}, function()
    {
        alert('done);
    });
});

問題は、送信user_mailのみです。

すべてのデータを送信するにはどうすればよい<input>ですか?

使用しようとしましたが$.post(url, function(){})、何も送信されません。

すべての入力を配列に入れてから$.post関数にスローすることは可能ですが、それをうまく行う方法がわかりません。

4

3 に答える 3

6

フォームのクラス名が次の場合はtable_data、これを使用します

$.post(url,$('.table_data').serialize(), function(){})

そして、配列のnamesキーとしてフォーム入力を取得します。global POST

完全なコード

$('.table_data').submit(function(event)
{
    event.preventDefault();
    // some validation check and then

    $.post(url, $(this).serialize(), function()
    {
        alert('done');
    });
});

$.serializeの詳細を読む

于 2012-06-03T18:48:07.450 に答える
1
$.post(
   url,                  // url to submit
   $(this).serialize(),  // make a standard-looking query string using all inputs value
   function(response) {        
     // success function
     // in parameter response is to capture data send from capture
  },
  'json'  // dataTyep in which format you're accepting 
          // data from server may be html, xml ans so on
);

関連参照:

于 2012-06-03T18:54:07.487 に答える
0

フォーム送信時のデフォルトの動作を防止し、event.preventDefault()ajax を使用してユーザーメール値のみをサーバーに送信しています。

私が理解していることから、すべての名前とその値を取得してサーバーに送信できるように、フォームをシリアル化する必要があります。そのためには、jQueryで関数をシリアル化する必要があります

于 2012-06-03T18:51:12.427 に答える