まだ支援するための具体的な回答を、私はロジックを変更しました。 10個のフォームを使用する代わりに、<form>
タグを削除し、div内は<a>
タグになります。 その<a>
タグはブートストラップモーダルにリンクしています。リンクからmodalにdata-hrefを介してvarsを渡します。 私が必要とするPHPからのすべてのデータを隠し入力に入れ、ユーザー入力パスワードで送信します。 これは機能します。
ビュー:
<?php
$queryCancel = $this->posweb->get_last_transactions($id)->result();
foreach ($queryCancel AS $cupom) {
?>
<div>
<a data-href="<?php echo $query->userId ?>" data-valid="<?php echo $query->valid_date ?>" data-idloja="<?php echo $idLoja ?>" data-estab="<?php echo $query->cnpj_loja ?>" data-valor="<?php echo $cupom->valor ?>" data-dtcompra="<?php echo date('d/m/Y', strtotime($cupom->created_at)) ?>" data-toggle="modal" data-target="#cancel-sale" class="btn btn-block btn-danger btn-danger-border" title="Cancelar Venda"><span class="label label-default label-size"><i class="fa fa-check"></i></span></a>
</div>
<?php } ?>
- モーダル -
<div class="modal fade modal-3d-slit" id="cancel-sale" aria-hidden="true"
aria-labelledby="exampleModalTitle" role="dialog" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title"><i class="fa fa-warning" aria-hidden="true"></i> Atenção</h4>
</div>
<?php
echo form_open('posweb/operacao');
?>
<div class="modal-body">
<div class="alert dark alert-alt alert-danger alert-dismissible" role="alert">
<strong>
<span>Ask the customer to enter your password</span>
</strong>
</div>
<label>Customer Password</label>
<input name="pswUser" type="password" class="form-control" />
<br>
<!--button type="submit" class="btnSalvar btn btn-block btn-danger btn-danger-border">
Cancel this Coupom
</button-->
<input type="hidden" class="inputValue" name="hdUser" />
<input type="hidden" class="inputValue2" name="hdvalidDate" />
<input type="hidden" class="inputValue3" name="hdidLoja" />
<input type="hidden" class="inputValue4" name="hdEstab" />
<input type="hidden" class="inputValue5" name="hdValor" />
<input type="hidden" class="inputValue6" name="hdDtCompra" />
<input type="hidden" name="operation_type" value="cancelSale" />
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default margin-0" data-dismiss="modal">Cancelar</button>
<button type="submit" class="btn btn-danger btn-ok">Confirmar</button>
</div>
</div>
</div>
</div>
JavaScriptを - あなたはモーダルクリック<a>
から欲しいvarsのPHPを渡す:
$('#cancel-sale').on('show.bs.modal', function (e) {
$(this).find('.btn-ok').attr('href', $(e.relatedTarget).data('href'));
$('.inputValue').val($(this).find('.btn-ok').attr('href'));
$(this).find('.btn-ok').attr('valid', $(e.relatedTarget).data('valid'));
$('.inputValue2').val($(this).find('.btn-ok').attr('valid'));
$(this).find('.btn-ok').attr('idloja', $(e.relatedTarget).data('idloja'));
$('.inputValue3').val($(this).find('.btn-ok').attr('idloja'));
$(this).find('.btn-ok').attr('estab', $(e.relatedTarget).data('estab'));
$('.inputValue4').val($(this).find('.btn-ok').attr('estab'));
$(this).find('.btn-ok').attr('valor', $(e.relatedTarget).data('valor'));
$('.inputValue5').val($(this).find('.btn-ok').attr('valor'));
$(this).find('.btn-ok').attr('dtcompra', $(e.relatedTarget).data('dtcompra'));
$('.inputValue6').val($(this).find('.btn-ok').attr('dtcompra'));
});
ホープで誰かを助けます同じ問題。 ページ上に同じ要素を持つ複数のフォームがある場合、送信された値は常に最後のフォームの値であることがわかります。 理由がわかっている場合は、お知らせください。
このコードには1つのフォーム要素しかありませんか? –
@BrianRamsey no。 PHPはこのような10のフォームを生成しています。 (最後の10件/ coupom) –
あなたのコードの貼り付けが完了していなければなりません... CIバリデーションライブラリを使用していますか? –