2016-02-06 93 views
1

我知道還有其他話題涉及這一點,但我通讀了他們,嘗試瞭解決方案,並且仍然遇到問題。php保持動態生成單選按鈕檢查後提交

我有一個數組$ genderValues,我通過循環來回顯表單內的兩個單選按鈕。該表單還有其他輸入以進行驗證。當用戶檢查男性或女性時,我希望單選按鈕在嘗試提交表單時仍保持檢查狀態,但不能滿足其他驗證,而不是自行清除。

$genderValues = ['Male','Female']; 

function ending ($genderVal) { 

     if (isset($_POST['gender']) && ($_POST['gender'] == $genderVal)) { 
      $ending = " checked />"; 
       return $ending; 
     } 
     else{ 
      $ending = "/>"; 
      return $ending; 
     } 
    } 

    foreach($genderValues as $genderVal){ 

     echo "<label class='radio' for=" . $genderVal . ">" . $genderVal . "</label> 
     <input type='radio' name='gender' id=" . $genderVal . " value=" . $genderVal . ending($genderVal); 

    } 
+0

問題不明確。你能更新嗎? – Drudge

+0

@Drudge好的,我做到了。這有幫助嗎? –

回答

1

改變這一行:

<input type='radio' name='gender' id=" . $genderVal . " value=" . $genderVal . ending($genderVal); 

要這樣:

<input type='radio' name='gender' id=" . $genderVal . " value='" . $genderVal . "' " . ending($genderVal); 
+0

謝謝,這工作。我以前嘗試過這樣做,但是當我發現我的代碼沒有將值放在引號內時,我只是覺得php很聰明,並且認爲它本身就是一個好東西。最好的做法是爲id做同樣的事情嗎? –