我正在寻找一种方法来获取所有值检查并将所有值输入到同一张表中。
这些是我的复选框和输入内容。如果用户通过单击+添加字段,则会将其添加到数组中。
我的模板:
{if $familyUser && $product.is_travel|intval === 1}
<div id="family_block_product">
<h3 class="green_title"><span>{l s='Ajouter des participants'}</span></h3>
{foreach $familyUser as $user}
{if $user->active == 1}
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text">
<p>
<input type="checkbox"
value="#{$user->id_block_family} {$user->surname|escape:'htmlall':'UTF-8'} {$user->name|escape:'htmlall':'UTF-8'}"
class="userChecked_{$user->id_block_family}" name="userChecked[]">
{$user->surname|escape:'htmlall':'UTF-8'} {$user->name|escape:'htmlall':'UTF-8'}
</p>
</div>
</div>
</div>
{/if}
{/foreach}
<div class="field_wrapper">
<a href="javascript:void(0);" class="add_button_blockproducttravel" title="Add field"><img
class="img-responsive"
src="/modules/blockproducttravel/img/add-icon.png"
width="20"/></a>
</div>
<p class="last_p">{l s='Votre enfant n\'est pas sur la liste : ' mod='blockproducttravel'}<a
href="{$link->getModuleLink('blockfamily', 'myfamily')|escape:'html'}">{l s='modifiez votre foyer' mod='blockproducttravel'}</a>
</p>
</div>
{/if}
这是我的HTML / Smarty模板,知道在必须恢复该表之后,才是数据库中的记录。
这是我已经做过的事情。
$(document).ready(function(){
var maxField = 10; //Input fields increment limitation
var addButton = $('.add_button_blockproducttravel'); //Add button selector
var wrapper = $('.field_wrapper'); //Input field wrapper
var fieldHTML = '<div class="form-group">' +
'<label class="col-md-4" for="nameGuest">Nom & Prénom</label>' +
'<div class="col-md-8">' +
'<input class="form-control nameGuest" type="text" name="field_name[]"/>' +
'<a href="javascript:void(0);" class="remove_button_blockproducttravel">' +
'<img class="img-responsive" src="/modules/blockproducttravel/img/Remove_Item_icon.png" width="20" />' +
'</a></div>';
var x = 0;
var counted = 0;
var participants = [];
$(addButton).click(function(e){
if(x < maxField){
x++;
counted++;
$('#quantity_wanted').val(counted);
$(wrapper).append(fieldHTML);
}
});
//Once remove button is clicked
$(wrapper).on('click', '.remove_button_blockproducttravel', function(e){
e.preventDefault();
$(this).parent().parent('div').remove(); //Remove field html
x--; //Decrement field counter
counted--;
$('#quantity_wanted').val(counted);
});
$("#family_block_product input[name='userChecked[]']").change(function (event) {
if ($(this).is(':checked')) {
counted++;
$('#quantity_wanted').val(counted);
participants.push(event.target.value);
console.log(participants);
} else {
counted--;
$('#quantity_wanted').val(counted);
// TODO Faire la suppression de l'utilisateur lorsqu'on décoche
}
});
});
谢谢您的帮助。