Я хочу створити 2 форми в поданні. Видно лише 1 форму. Ще один прихований.
Отже, я хочу мати лише 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")); ?>
Відповіді:
4 для відповіді № 1Найкращий спосіб досягти цього був би за допомогою 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"
функція викликів для розміщення обох форм за ідентифікатором форми.
0 для відповіді № 2
краще перегорніть дані форми та надішліть запит ajax до (https://uat.pbbank.com/payment/dpayment.jsp) і подія звичайного натискання вашої дії.