2017-03-27 52 views
1

不知道這個問題是否已經回答了某個地方..已經搜索了它,並找到了一些關於它的東西..但sincerelly不真正理解答案看到,可能是一個主要的困惑因爲即時消息不是那些與這些語言的工作經驗..php/html輸入複選框的

事情是,我有一組5個複選框,我想發佈在二進制輸出例如:[0,0,1,1,0] 。

到目前爲止,我已經通過應用隱藏的輸入解決方案(我以更靜態的方式描述了這一點..因爲我有很多東西來自數據庫,以及其他東西,這個問題..我覺得)

$checkychecky = explode(",", [1,0,1,0,0]); 
<input type="hidden" name="'.$row_perguntas[0].'[]" value="0"><input type="checkbox" onclick="this.previousSibling.value=1-this.previousSibling.value"'.$checked = ($checkychecky[0] == 1 ? "checked=\"checked\" " : "")/>'.$questionV[1].' 

row_perguntas->來自這使我的顯示名稱的分貝

checkychecky - >臨時變種,其存儲本值陣列[1,0中的值, 1,0,0]

questionV - > db標籤內容

這是工作得很好..問題是當我前進到另一個窗體,然後回到這個窗體,我得到正確的ARRAY值,設法將可見覆選框選中,但不知道什麼是什麼與隱藏的領域做..因爲tecnically它沒有設置,我不按下複選框..所以onclick不會發射..當我前進到下一個表格再次我結束提交[0,0,0,0,0 ]

我該如何解決這個問題?已經tryed使用.. checkychecky上隱藏的輸入:

<input type="hidden" name="'.$row_perguntas[0].'[]" value="0"'.$value= ($checkychecky[0] == 1 ? "value=\"0\" " : "1") 

但在所有:(

任何想法沒有成功得益於

+0

這是在PHP程序?因爲'$ checkychecky = [1,0,1,0,0];'看起來像我的javascript – Forbs

+0

@Forbs不知道它如何看起來像JavaScript ..但是,它的PHP程序..也有JavaScript在它的代碼..這不是在這裏,因爲它不解決這個問題.. https://www.w3schools.com/php/php_variables.asp。使checkychecky在代碼中的使用更加清晰。 –

回答

0

解決..

var checkBQ = ["c0q402","c1q402","c2q402","c3q402","c4q402","c0q408","c1q408","c2q408","c3q408","c4q408"]; 

     var checkBQLength = checkBQ.length; 


     for (var i = 0; i < checkBQLength; i++) { 
      if(document.getElementById(checkBQ[i]).checked){ 
       document.getElementById(checkBQ[i]).previousSibling.value = 1; 
      }else{ 
       document.getElementById(checkBQ[i]).previousSibling.value = 0; 
      } 
     }