0

我有一个问题,实际上是两个,关于 eric martins 简单模态。我尝试做的是,当有人单击按钮时,模式会弹出并显示该特定产品的不同变体。这是复选框,因此您可以选择“绿色”红色等颜色。不仅仅是红色或绿色。此外,还有输入字段,您可以在其中填写您想要的特定颜色的数量。所以1或20或一百万等等......

到目前为止一切顺利......问题是现在我需要将填写的数据和选中的复选框发送回服务器。我实际上不知道该怎么做。

所以:1)我如何检查一个复选框是否真的被选中?2)如何从输入字段中获取值?3)如何将此数据发送到服务器?

我所拥有的是:

$('.opener').click(function (event) {

 var url = $(this).attr("href")+'/?format=json';

 $('#formVariants').modal({ 

 onShow:function(dialog) {      

   $.getJSON(url, function(data) {           

     var contentHtml = '';

     $.each(data.product, function(index, product){

       var image = 'http://cdn.webshopapp.com/i/' + image_id_convert(data.product.image) + '/160x120x2/image.jpg';

       contentHtml = 
         '<img src="'+image+'"/>' +
         '<div class="variantsContainer">' +  
         '<h3>' + data.product.fulltitle + '</h3>';
       });

     $.each(data.product.variants, function(index, variant){

       //var variantId = ;
       //  " selected="selected"> - €0,00
       contentHtml = contentHtml + 
         '<div class="variants">' + 
         '<label><input type="checkbox" name="variant" value="' + variant.id + '"/>' + variant.title + '</label> ' +
         '<label style="float:right; margin-right:10px;">Aantal: <input type="text" name="quantity" id="formProductQuantity" value="1" /></label>';

       contentHtml = contentHtml +   
         '</div>';

     });

     $('#formProduct .formProductContent').html(contentHtml);

   });

 }
 });
 return false
 })

我的 HTML

    <div id="formVariants">
  <div class="formVariantsContent">
    <form class="formProduct" id="formProduct" action="{{ ('cart/add/' ~ product.vid ) | url }}" method="post">
      <div class="formProductContent"></div>
      <a class="button button grey simplemodal-close"><span>{{ 'Annuleren' | t }}</span></a>
      <a class="button blue opener" href="#" title="{{ 'Add to cart' | t }}"><span>{{ 'Add to cart' | t }}</span></a>
    </form>
  </div>
</div>

我对 jquery 还很陌生,走到这一步,如果有人给我一些建议,我会很高兴。

谢谢。

4

1 回答 1

1

由于您使用的是表单,因此当您使用 method="post" 提交它时,它将为您的输入字段发送表单 key=name value=value 的键值对。例如:

<input type="text" name="quantity" id="formProductQuantity" value="1" />

在您的 POST 中,您将拥有 ['quantity'] = 1

在表单中 action= 导致在提交表单时将请求发送到该 url。

于 2012-07-31T23:37:48.643 回答