Post不在表单标签中的元素


Post elements that is not in the form tag?

我有这样的代码:

<form enctype="multipart/form-data" method="POST" action="blabla.php" class="addToCart">
  <input type="button" onclick="addToCartMulti();" value="Add Tracks to Cart" id="addToCart" name="addToCart">
</form>

在表单标签之外,我有tracklisting:

<ul>
 <li><input type="checkbox" checked onclick="onSongClick(this);" id="trackNr_1" name="trackSelect" class="trackSelectionCheck"> 1. Train Love</li><li>
  .....
</ul>

我希望能够张贴的形式,并包括这些其他值。到目前为止,JavaScript的代码是这样的:

function addToCartMulti() {
  $("input.trackSelectionCheck").each(function(index) {
              var track = $(this).attr("id");
              var start = 8;
              var end = track.length;
              track = track.substring(start,end);
              $("form.addToCart").submit();
        });
  }

所以问题是在这之前的某个地方:$("form.addToCart").submit();。我需要添加一些JavaScript来实际包含其他复选框,以便它们被发布到页面。

注意:我不想使用ajax

添加一个隐藏的表单字段到您的表单,然后复制跟踪数据,您需要的任何格式(例如,逗号分隔的列表),到该隐藏字段。然后像现在一样调用submit。

注意:看起来你当前在"each"循环中调用了sumbit,这可能不是你想要的。您希望处理每个复选框的所有复选框,然后在完成后执行提交。所以"submit()"调用应该在每个循环之外,除非我误解了你的意图。