0

ドロップされたアイテムからプルされた要素 ID (jqueryui のドラッグ可能/ドロップ可能/ソート可能を使用) から取得したデータを、フォームを介して (電子メールで送信されるように) ここのデータと共に送信する必要があります。

      function submitForm() {
$.ajax({type:'POST',
       url: 'send_tile.php',
       data:$('#tiles_collected').serialize(), 
       success: function(response) {
    $('#tiles_collected').find('.form_result').html(response);
}});

return false;
   }

IDを取得するための関数は次のとおりです(まだ正しく機能するかどうかはわかりません):

  function getSku() {
var myIds = new array();
        $("#collection li").each(function(index, element){
              alert($(this).attr('id'));
           myIds.push(element.id);

            });

フォームは次のようになります。

     <form id="tiles_collected" name='tiles_collected' method="post" onsubmit="return submitForm();">
      Email:<input name='email' id='email' type='text'/><br />
      Name:<input name='name' id='name' type='text' /><br />
       Zip code: <input name='zip' id='zip' type='text' /><br />
       <input type='hidden' id='sku' />
       <input type="submit" name="submit" value="Email collection to yourself and us" /><br/>
       <div class="form_result"></div>
       </form>

誰か助けてくれませんか?

4

1 に答える 1

0

サーバーに送信されるデータに ID を追加するには、extend を使用するか、Ajax 関数に ID を追加するだけです。

拡張する:

function submitForm() {
    var MyData = $('#tiles_collected').serialize();
    $.extend(MyData, {IDs: myIds});  //myIds will have to be accessable, right now it's a local variable in your getSku() function

    $.ajax({type:'POST',
       url: 'send_tile.php',
       data: MyData, 
       success: function(response) {
            $('#tiles_collected').find('.form_result').html(response);
       }
    });
    return false;
}

または、それらを直接追加します。

function getSku() {
    var myIds = new array();
    $("#collection li").each(function(index, element){
        myIds.push(element.id);
    });
    return myIds;
}

var IDs = getSku();

$.ajax({type:'POST',
    url: 'send_tile.php',
    data: {data : $('#tiles_collected').serialize(), ids : IDs},
    success: function(response) {
        $('#tiles_collected').find('.form_result').html(response);
    }
});
于 2012-04-09T11:47:03.473 に答える