我有以下代码:
foreach($redeemSales as $sale) { ?>
<tr value='<?php echo $sale['id']; ?>'>
<td><?php echo $sale["submissionId"];?></td>
<td><?php echo $sale["ring"];?></td>
<td><?php echo formatFullDate($sale["soldDate"]) ?></td>
<td><?php echo $sale["saleType"]; ?></td>
<td>
<div class="col-lg-8">
<select name="claimTypes[]" class="form-control redeemOptions">
<option value="">Choose Gift</option>
<option value="CD">Credit (CD)</option>
<option value="Amex">American Express Card (Amex)</option>
</select>
</div>
</td>
</tr>
<?php }?>
我使用代码获取所有claimTypes
:
var cclaim = $('select[name="claimTypes[]"]').serialize();
问题是,我不确定,因为它是一个for循环,我无法找出哪个选择选项是saleId
。
如何为除第一个选项以外的所有选定saleId
获取关联的claimTypes
?
答案 0 :(得分:0)
你可能想做这样的事情:
<select name="claimTypes_<?php echo @sale['id']; ?>" class="form-control redeemOptions">
...
var cclaim = $('select[name^="claimTypes"]').serialize();
虽然不清楚为什么你会在同一表格中有多个(相同的)选择。
答案 1 :(得分:0)
这个怎么样:
....
<select name="claimTypes[]" class="redeemOptions" data-id="<?php echo @sale['id']; ?>">
...
$('select.redeemOptions').filter(function(){
return $(this).val() != "";
}).each(function() {
var saleId = $(this).data("id");
var selectedRedeemValue = $(this).val();
console.log(saleId + ": " + selectedRedeemValue);
});