我想在视图中创建2个表单。只有1个表格可见。 另一个是隐藏的。
因此,我希望两个表单只有一个提交按钮。
代码:
<?php echo $this->Form->create('Payment', array('type' => 'post', 'url' => 'https://uat.pbbank.com/payment/dpayment.jsp'));
echo $this->Form->hidden('merchant_id', array('value'=>'3242', 'name'=>'merchant_id', 'id'=>'merchant_id'));
echo $this->Form->end(__('Submit')); ?>
<?php echo $this->Form->create('Payment');
echo $this->Form->hidden('merchant_id', array('value'=>'3242', 'name'=>'merchant_id', 'id'=>'merchant_id'));
echo $this->Form->end(__('Submit')); ?>
答案 0 :(得分:4)
实现这一目标的最佳方法是使用Ajax或JS / Jquery。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#submit").click(function () {
$.post($("#addToDB").attr("action"), $("#addToDB").serialize(),
function () {
alert('Add to Database submitted');
});
$.post($("#paymentGateway").attr("action"), $("#addToDB").serialize(),
function () {
alert('Payment Gateway submitted');
});
});
});
</script>
表格:
<form id="addToDB" action="addtodatabase.php" method="post">
<input type="button" id="submit" value="Submit" />
</form>
<!-- Hidden form for payment gateway -->
<form id="paymentGateway" action="paymentgateway.php" method="post">
<!-- Payment gateway input fields -->
</form>
点击具有id="submit"
调用功能的按钮,可以按表单ID发布两个表单。
答案 1 :(得分:0)
您最好将表单数据打包并使用ajax将请求发送到(https://uat.pbbank.com/payment/dpayment.jsp)并执行您的操作正常点击事件。