2010-01-27 39 views
2

我將在PHP中使用AJAX獲取選中的單選按鈕值。我已經完成了下面的代碼,但是我無法繼續。如何使用PHP中的AJAX獲取選中的單選按鈕值?

我需要你的幫助。

ajax_radio.php

<html> 
    <head> 
    <script type="text/javascript" src="ajax.js" ></script> 
    </head> 
    <body> 
    <input type="radio" name="radio1">Blue</input> 
    <input type="radio" name="radio2">White</input> 
    <input type="radio" name="radio3">Red</input> 
    <input type="button" name="btn" value="Click" onClick="hello('a')"></input><br /> 
    <input type="text" id="btn_get" name="get_btn_value"></input> 
    </body> 
</html> 

ajax.js

var xmlHttp; 
function GetXmlHttpObject(){ 
    try{ 
     xmlHttp = new XMLHttpRequest(); 
    } 
    catch(e){ 
     try{ 
      xmlHttp = new ActiveXObject(Msxml2.XMLHTTP); 
     } 
     catch(e){ 
      try{ 
       xmlHttp = new ActiveXObject(Microsoft.XMLHTTP); 
      } 
      catch(e){ 
       alert("doesn't support AJAX"); 
       return false; 
      } 
     } 
    } 
} 
function hello(a){ 
    GetXmlHttpObject(); 
    xmlHttp.open("GET","ajax_radio.html?",true); 
    xmlHttp.onreadystatechange = response; 
    xmlHttp.send(null); 
} 
function response(){ 
    if(xmlHttp.readyState == 4){ 
     if(xmlHttp.status == 200){ 
      var radio_text = xmlHttp.responseText; 
      document.getElementById('btn_get').innerHTML = radio_text; 
     } 
    } 
} 

你知道如何完成呢?提前致謝。 :)

編輯:

我不能在這裏發佈的代碼,現在,由於網絡的低速。對不起。

我已在rapidshare中分享。你能先下載它,然後幫忙嗎?非常感謝。

當我回家時,我必須更新它。太糟糕了。

+0

huuuuh,因此您無法粘貼代碼,因爲我們的網絡很慢?我認爲粘貼是一個標準的Windows功能:D ... – Younes 2010-01-27 10:20:24

+0

我可以粘貼代碼,但是當我提交頁面時,它變成空白。我嘗試發佈其他地方或製作一個zip文件。我很抱歉。 – 2010-01-27 10:22:33

+1

只需粘貼你的ajax的源代碼包裝它

DoctorLouie 2010-01-27 10:32:14

回答

8

,因爲我主要是使用jQuery我在這裏寫了一個jQuery剪斷,檢查單選按鈕值,因爲它是更容易和更清潔:

<script src="http://www.google.com/jsapi"></script> 
<script> 
    google.load("jquery", "1.4.0"); 
</script> 
<script type="text/javascript"> 
    $(function() { 
     $('#buttoncheck').click(function() { 
      var var_name = $("input[name='radio1']:checked").val(); 
      $('#btn_get').val(var_name); 
     }); 
    }); 
</script> 
<html> 
    <head> 
     <script type="text/javascript" src="ajax.js" ></script> 
    </head> 
    <body> 
     <input type="radio" value="Blue" name="radio1">Blue</input> 
     <input type="radio" value="White" name="radio1">White</input> 
     <input type="radio" value="Red" name="radio1">Red</input> 
     <input id="buttoncheck" type="button" name="btn" value="Click"></input> 
     <br /> 
     <input type="text" id="btn_get" name="get_btn_value"></input> 
    </body> 
</html> 

看看jQuery的位置:Jquery

說明: 這部分選擇帶ID #buttoncheck的項目並檢查它是否運行:$('#buttoncheck').click(function() {

然後它會運行函數中的代碼。此代碼獲取名稱爲radio1的輸入框的值。 ':checked'確保它只選中選中的單選按鈕的值:

var var_name = $("input[name='radio1']:checked").val(); 

最後。這將變量的值放入#btn_get的項目中作爲ID:

$('#btn_get').val(var_name); 
+0

@謝謝你RJD22,你真棒!你救了我,給了我一個很好的教程。雖然已經完成,但我必須潛入其中。我正在學習如何使用jQuery,但是我仍然很難理解你的代碼。我仍然想嘗試用純Ajax來實現它。 – 2010-01-27 15:10:16

+0

@ garcon1986:jQuery是使用「純」Ajax的「純」JS。通過不必擔心跨瀏覽器兼容性和一些其他好幫手,讓您的生活變得更輕鬆是唯一的事情。 – 2010-01-27 15:13:13

+0

@Felix,謝謝你的解釋。 jQuery對於開發人員來說是一個不錯的工具。乾杯。 – 2010-01-27 15:27:06

相關問題