所以我有这两种形式。每个按钮都有其自己的动作,单独的字段和值,单选按钮和按钮。我想做的是我要有两个单选按钮和一个按钮。什么是最好的解决方案。

<div class="span6">
      <h2 class="headback" >انتخاب دروازه پرداخت</h2>
      <div class="text-box" style="padding-bottom: 0px">

        <form class="form-inline" method="post" id="PaymentForm" action="https://google.com" style="direction: rtl">
          <input type="hidden" name="amount" value="{{payment.Amount}}"/>
          <input type='hidden' name='paymentId' value='{{payment.InvoiceNumber}}' />
          <input type='hidden' name='revertURL' value='http://test2.happycard.ir/payment/verify' />
          <input type='hidden' name='customerId' value='{{payment.Id}}' />

          <label class="radio">
            <img src="/media/images/images/bank.jpg"/><br/>
            <input type="radio" name="PaymentProvider" id="PaymentProvider" value="4" checked>
          </label>
          <ul style="text-align: right">
            <li>
              <input type="button" value="Proceed" ng-click="SetPrePayment();" class="btn btn-primary">
            </li>
          </ul>
        </form >


    <form class="form-inline" method="post" id="PaymentForm2" action="www.wikipedia.com" style="direction: rtl">
          <input type="hidden" name="pin"         value='5I8bpgGr034AmB38MPQ7'/>
          <input type="hidden" name="Id"            value="{{payment.Id}}"/>
          <input type="hidden" name="OrderId"     value="{{payment.OrderId}}"/>
          <input type="hidden" name="amount"        value="{{payment.Amount}}"/>
          <input type='hidden' name='paymentId'     value='{{payment.InvoiceNumber}}' />
          <?php if(custom_config::$IPGtest==1){ ?>
          <input type='hidden' name='revertURL'   value="<?php echo custom_config::$Test2ParsianRevertUrlHappyBarg; ?>" />
          <?php } elseif(custom_config::$IPGtest==2){ ?>
          <input type='hidden' name='revertURL'   value="<?php echo custom_config::$ParsianRevertUrlHappyBarg; ?>" />
          <?php } ?>

          <label class="radio">
            <img src="/media/images/images/bank.jpg"/><br/>
            <input type="radio" value="parsian" name="bankname" checked>
          </label>

          <ul style="text-align: right">
            <li>
              <input  type="button" ng-click="SetPrePayment2();" value="Proceed" class="btn btn-primary">
            </li>
          </ul>
        </form >
  </div>
</div>


剧透警报,AngularJS用于按钮的动作。我上传了一张照片,向您展示了我当前代码的输出。

javascript - 合并两个表单与两个单选按钮和一个表单-LMLPHP

我想成为的是:

javascript - 合并两个表单与两个单选按钮和一个表单-LMLPHP

这是我的SetPrePayment()函数的代码。

$scope.SetPrePayment=function(){
      $http.post('/payment/happy_payment_register/',{ 'Amount':$scope.totalPrice,'Item':$scope.item.Id, 'Description':$scope.item.Title, 'Count':$scope.defaultQuantity })
        .success(function(data, status, headers, config) {
          if(data!='Fail')
          {
            $timeout(function() {
              $scope.payment=data;
              timer= $timeout(function(){
                document.getElementById("PaymentForm").submit();
              },10)
            }, 0);
          }
        })
        .error(function(data, status, headers, config) {
          console.log(data)
        });
    };


并且SetPrePayment2()是:

$scope.SetPrePayment=function(){
      $http.post('/payment/happy_payment_register/',{ 'Amount':$scope.totalPrice,'Item':$scope.item.Id, 'Description':$scope.item.Title, 'OrderId':$scope.item.Id, 'Count':$scope.defaultQuantity })
        .success(function(data, status, headers, config) {
          if(data!='Fail')
          {
            $timeout(function() {
              $scope.payment=data;
              timer= $timeout(function(){
                document.getElementById("PaymentForm2").submit();
              },10)
            }, 0);
          }
        })
        .error(function(data, status, headers, config) {
          console.log(data)
        });
    };

最佳答案

您可以使用jquery解决此问题。

将您的按钮移出两种形式并为此设置一个ID。

<button id="myButton">Submit</button>

现在,您可以检查jquery中的单选按钮以提交自己的表单。

jQuery示例代码:

$( document ).ready( function() {

    $( '#myButton' ).on( 'click', function() {

        if ( $( '#radio_1' ).is(':checked') ) {

            $( '#form_1' ).submit();
            setPrePayment();


        } else {

            $( '#form_2' ).submit();
            setPrePayment2();

        }

    });

});

10-05 20:56
查看更多