2

私はこのようなフォームを持っています:

<form name="paymentForm" id="paymentForm" action="/submit.jsp" method="post">
    <fieldset id="ccData">
        <input id="ccNumber" name="ccNumber"/>
    </fieldset>
    <fieldset id="otherData">
        <input id="requestId" name="requestId"/>
    </fieldset>
</form>

送信をスムーズに行うと、#ccData ファイルセットのみを別の URL (たとえば、submitCC.jsp) に (ajax 経由で) 送信し、応答に基づいて完全なフォームを実際の URL に送信したいと考えています。

どうすればそれを達成できますか?

4

2 に答える 2

2

jQuery のserializeメソッドを使用する

var formData = $("#ccData").serialize()​;
$.post("TheUrl",formData);
于 2012-11-06T21:40:11.053 に答える
0

jQuery などの JavaScript を使用してそれを行うことができます。次のようなeventHandlerを構築します

$('#paymentForm').on('click', function () {
  $(this).preventDefault();
  if ($(this).hasClass('first_send')) {
    $.ajax({
      url: "your_url",
      data: { ccData: $('#ccData').val()}
    }).done(function ( data ) {
      $('#paymentForm').addClass('first_send')
      // examin the data, insert stuff you need and send the form again
      // with ajax
    })
  } else {
   $(this).removeClass('first_send')
   // this is the second send - so do stuff here - show a result or so
  }
})

クラス first_send を使用すると、最初の送信か 2 番目の送信かを確認できます。これは、テストされていない不完全なアイデアにすぎません。大まかなイメージは掴めると思います...

于 2012-11-06T21:50:01.110 に答える