2014-08-27 143 views
0

我有一個包含多個複選框輸入字段的訂單。我想在提交表單前向用戶顯示所做的選擇。下圖所示的js腳本按照預期工作,如果用戶選中該框的值顯示在該段落中。問題是每個額外的選中複選框都會覆蓋前面顯示的結果。JS在表單提交之前輸出所有檢查的輸入字段值

如何更改腳本以輸出所有選中的複選框?

這是PHP形式:

<input type="checkbox" onchange="toggleCheckbox(this)" value="1" name="1"> 
<input type="checkbox" onchange="toggleCheckbox(this)" value="2" name="2"> 
<input type="checkbox" onchange="toggleCheckbox(this)" value="3" name="3"> 
<input type="checkbox" onchange="toggleCheckbox(this)" value="4" name="4"> 
<input type="checkbox" onchange="toggleCheckbox(this)" value="5" name="5"> 
<input type="checkbox" onchange="toggleCheckbox(this)" value="6" name="6"> 
<input type="checkbox" onchange="toggleCheckbox(this)" value="7" name="7"> 

中的JavaScript我使用:

<script type="text/javascript"> 
    function toggleCheckbox(element){ 
     if (element.checked){ 
     document.getElementById("test").innerHTML = element.value; 
     } 
     else document.getElementById("test").innerHTML = ""; 
} 
</script> 

HTML字段:

<p id="test"></p> 
+0

可能的重複:http://stackoverflow.com/questions/2155622/get-a-list-of-checked-checkboxes-in-a-div-using-jquery – Naruto 2014-08-27 08:22:16

回答

1

+ ==

function toggleCheckbox(element){ 
     if (element.checked) 
     document.getElementById("test").innerHTML += " " + element.value; 
     else 
     document.getElementById("test").innerHTML = 
      document.getElementById("test").innerHTML.replace(element.value, ""); 
    } 
+0

這樣做的伎倆。仍然,任何想法如何更改其他部分,只刪除未選中的項目? – CiprianD 2014-08-27 08:28:18

+0

看到編輯... – 2014-08-27 08:33:19

+0

頂級! D.非常感謝您的快速回復:D – CiprianD 2014-08-27 08:35:03