2016-12-12 58 views
0

在此先感謝,其實我有一個窗體有兩個隱藏的文本框字段之一是<input type="hidden" name="item_name" class="course_name" value="<?php echo $cartData['exam'];?>">,另一個是<input type="hidden" name="amount" class="amount" value="<?php echo $priceTotal;?>">,該值是隱藏字段內動態從PHP代碼通過循環。那麼我怎樣才能得到動態值的「item_name」文本框字段和「金額」文本框字段逗號分隔使用Jquery單擊圖像按鈕時id =「placeOrder」。 例如,如下所示:金額 - > 200,300和課程名稱 - > PMP,CAPM。我已經寫了一些代碼,它會採取jQuery中的每個循環內的值,但我必須通過像這樣的json格式的阿賈克斯data : {cname:course_name,priceBox:textboxVal}因此用逗號分隔值的值應該通過course_name & textboxVal。如何在jQuery中獲取兩個動態文本框的值

我的頁面是

<html> 
<head> 
    <title></title> 
    <script> 
    $(document).ready(function(){ 
     var myArray = []; 
     $('.amount').each(function(){   

     var textboxVal = $(this).val(); 
     //alert(textboxVal);   

     }); 

     var myCourse = []; 
     //dynamic course name 
     $('.course_name').each(function(){ 

      var course_name = $(this).val(); 
      //alert(course_name); 

      }); 

      if(textboxVal!="") 
      { 

       $.ajax({ 

        type : "POST",  
        url : "/invl_exams/cart",     
        cache : "false", 
        data :  {cname:course_name,priceBox:textboxVal},   
        success : function(result){  

        console.log(result);          

        } 


       }); 


      } 


    }); 
    </script> 
</head> 
</html> 
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post"> 

     <td>    
      <input type="hidden" name="cmd" value="_xclick"> 
      <input type="hidden" name="business" value="[email protected]">  
      <input type="hidden" name="upload" value="1"> 
      <?php    

       if(isset($cartDatas)) 
       { 
        $itm_no = 1; 
        $amt = 0;        
        foreach($cartDatas as $key=> $cartData) 
        { 

        $prices = $cartData['price'];  
        $prd_price = ltrim($prices,'$'); 
        $priceTotal = number_format((float)$prd_price, 2, '.', ''); 


      ?> 

       <input type="hidden" name="item_number" value="<?php echo $itm_no++;?>">   
       <input type="hidden" name="item_name" class="course_name" value="<?php echo $cartData['exam'];?>">  
       <input type="hidden" name="amount" class="amount" value="<?php echo $priceTotal;?>"> 
       <input type="hidden" name="shipping" value="shipping Address"> 
       <input type="hidden" name="quantity" value="<?php echo $cartData['orders'];?>">  

      <?php     

        $price = ltrim($prices,'$'); 
        $orders = $cartData['orders'];    
        $amt_Total = $price * $orders; 
        $amt += $amt_Total; 
        $amt_Total = number_format((float)$amt, 2, '.', ''); 

        ///$amt_Total = round($price * floatval($orders),2); 


       }    

      ?> 

       <input type="hidden" name="currency_code" value="USD">    
       <input type="hidden" name="amount" value="<?php echo $amt_Total;?>">      
      <?php 

       } 

      ?> 
      <input type="image" src="http://www.paypal.com/en_US/i/btn/x-click-but03.gif" name="submit" id="placeOrder">    
     </td> 
     </form> 
+0

去走遍 - http://stackoverflow.com/questions/34366218/how-to-get-value-from-動態創建,hidden-在jQuery中的字段 – Shan

回答

0

你可以這樣做以下:

$(function(){ 
    var amount = []; 
    var course = []; 
    $('.amount').each(function(){ 
    amount.push($(this).val()); 
    }); 
    $('.course_name').each(function(){ 
    course.push($(this).val()); 
    }); 
    console.log(amount.join(',')); //comma seperated value 
    console.log(course.join(',')) //comma seperated value 
}); 

DEMO

+0

雅在工作。非常感謝你 –

0

您可以使用jQuery和屬性選擇器來獲取值:

var item_name = $('input[name=\'item_name\']').val(); 
var amount = $('input[name=\'amount\']').val(); 

var result = item_name + ',' + amount; 

現在你可以把這個在點擊處理程序。

0

如果你輸入的表單元素括起來,你可以用這個序列化的形式輸入值JSON對象,然後把它傳遞給阿賈克斯呼籲。

var postData = $("#enclosing_form_elm").serializeObject(); 

,並在腳本中添加引用的jQuery

$.fn.serializeObject = function() 
{ 
var o = {}; 
var a = this.serializeArray(); 
$.each(a, function() { 
    if (o[this.name] !== undefined) { 
     if (!o[this.name].push) { 
      o[this.name] = [o[this.name]]; 
     } 
     o[this.name].push(this.value || ''); 
    } else { 
     o[this.name] = this.value || ''; 
    } 
}); 
return o; 

}後,序列化對象的功能;

只是一個演示https://plnkr.co/edit/7maJAUSdakDuvVqXhnzi?p=preview

由於Convert form data to JavaScript object with jQuery

相關問題