2014-10-07 60 views
0

我想存儲具有多種選擇答案的問題。答案的數量可以從2到更多的答案。帶有多個問題和答案的表格

我對此有幾個問題。但首先,我會告訴我當前的代碼:

HTML:

<div class="questionFormTemplate"> 
    <form action="utils/handleForm.php" method="post"> 
     <table> 
      <tr> 
       <td><input type="text" name="question" value="question?"/></td>         
      </tr> 
      <tr> 
       <td><input type="text" name="answer[]" value="answer 1"/></td> 
       <td><input type="button" value="remove" class="remove"/></td>         
      </tr> 
      <tr> 
       <td><input type="text" name="answer[]" value="answer 2"/></td> 
       <td><input type="button" value="remove" class="remove"/></td> 
      </tr>    
      <tr> 
       <td><input type="button" value="add answer"/></td> 
      </tr> 
     </table> 
     <input type="submit" value="update" /> 
    </form> 
</div> 

<div id="container"></div> 

JS/jQuery的:

// add some question forms to the container 
var questionFormTemplate = $('.questionFormTemplate').html(); 

console.log(questionFormTemplate); 

for(var i = 0; i < 8; i++) { 
    $('.container').append(questionFormTemplate); 
} 


// make the buttons work 
$('input[type="button"][value="remove"]').on("click", function() { 
    $(this).parent().parent().remove(); 
}); 

$('input[type="button"][value="add answer"]').on("click", function() { 
    $(this).parent().parent().parent().append('<tr><td><input type="text" name="answer[]" value="answer"/></td><td><input type="button" value="remove" class="remove"/></td></tr>'); 
}); 

CSS:

.questionFormTemplate { 
    display: none; 
} 

http://jsfiddle.net/clankill3r/5nkunpsw/3/

1)是它easie r爲每個問題制定一個表格,或者提出一個包含所有問題的表格?

2)我怎樣才能知道哪些問題是sended到handleForm.php(如1,2或3等)

3)是我目前的做法是好是壞?我需要能夠顯示數據庫中的內容。

+0

$('。container')。append(questionFormTemplate);因爲容器是一個id而不是一個類,所以:$('#container')。append(questionFormTemplate); – 2014-10-07 22:52:56

+0

thx,我從現在的問題中刪除了它,因爲這是一個很小的錯誤。 – clankill3r 2014-10-07 22:58:25

回答

0

那麼我建議給每個問題一個id屬性,然後你可以發送到你的php類,它可以從數據庫驗證。例如,對於表單1問題2,您可以給它「id = 12」。

+0

但PHP無法檢索到該ID。 – clankill3r 2014-10-08 09:26:50

+0

該ID將在數據庫中。例如,如果您發送了id = 12,那麼您可以查詢db以獲取表單1問題2答案的答案,驗證它是否正確,然後將其發送回客戶端。 – Maxqueue 2014-10-08 15:54:37