2011-05-12 53 views
0

今天我想學習如何抓取多個輸入類型的按鈕值與原始值比較並最終提交給php腳本!我該如何用JQuery來做到這一點?抓取多個輸入無線電值並提交給PHP腳本

<html> 
<body> 
<div id="leftDiv" class="container"> 
<form action="" method="get"> 
    <fieldset> 
     <p>Something 0</p> 

     <lable>Yes</label> 
     <input type="radio" name="Group0" value="1" > 

     <lable>No</label> 
     <input type="radio" name="Group0" value="0" > 

    </fieldset> 

    <fieldset> 
     <p>Something 1</p> 

     <lable>Yes</label> 
     <input type="radio" name="Group1" value="1" > 

     <lable>No</label> 
     <input type="radio" name="Group1" value="0" > 

    </fieldset> 

    <fieldset> 
     <p>Something 2</p> 

     <lable>Yes</label> 
     <input type="radio" name="Group2" value="1" > 

     <lable>No</label> 
     <input type="radio" name="Group2" value="0" > 

    </fieldset> 

    <fieldset> 
     <input type="submit" name="update" class="button" value="Submit"> 
    </fieldset> 
</form> 
</div> 
</body> 
</html> 

上述值由PHP腳本生成(可以是1或100)

+2

你需要更多的細節如擴大你的問題,添加要使用的單選按鈕的HTML,寫了一些僞代碼爲了實現你想要達到的目標,請解釋你的PHP腳本需要什麼輸入等。 – rojoca 2011-05-12 15:36:20

+0

你能說得更詳細一些還是至少給我們看一個例子? – 2011-05-12 15:35:18

+0

輸入需要不同的名稱 – Neal 2011-05-12 16:55:57

回答

0

最簡單的方法實際上是在HTML中設置正確的值並將.onChange事件與它們綁定。否則,有原始值的隱藏字段,和的onChange比較他們這樣

//a hidden input field with the original value 
    <input type='hidden' id='Group0' value='0'/> 
    // a set of radio fields that reference the original field we will be comparing with in their 'rel' attribute for easy jQuery selection 
    Off<input type='radio' name='Group0' rel='#Group0' class='compareOnChane' value=0/><br/> 
    On <input type='radio' name='Group0' rel='#Group0' class='compareOnChane' value=1/> 

    <script> 
    $(document).ready(function(){ 
     $('.compareOnChange').live('change',function(){ 
     if($($(this).attr('rel')).val()!=$(this).val(){ 
      //the value currently is different than the original value, fire our action 
     } 

     }); 

    }); 

    </script> 
0

這是一個非常好的教程,將教你這樣做的基礎:

http://trevordavis.net/blog/ajax-forms-with-jquery

您可以像JSON一樣獲取單選按鈕的值:

var radios = {}; 
$('input[type="radio"]').each(function() { 
    radios[$(this).attr('name')] = $(this).attr('value'); 
}); 
+0

好的,所以無線電是將存儲所有數據的陣列嗎?讓我們說,我將有多個單選按鈕應該引用這個特定的div,我該怎麼做呢?所以在存儲所有的值之後,我怎樣才能將它發送給php? – obinoob 2011-05-12 15:53:30

+0

無線電收音機確實將所有數據存儲爲JSON。目前它獲取頁面上所有單選按鈕的數據。只需要爲選中的選項添加:checked選擇器,並且僅對某些選項(在div中)執行它,您將首先輸入div ID:$('#divID input [type = 「無線電」]:檢查')。要將這些數據發送到php,您需要閱讀我鏈接的教程。我在這裏重複這一點毫無意義。 – thugsb 2011-05-12 19:46:25

+0

我正在閱讀很多東西:)*無論如何。 – obinoob 2011-05-12 22:27:14