2015-06-02 3 views
1

У меня проблема при поставке флажка. Код, как показано ниже:JavaScript checkbox submit только один вход

код JavaScript

function init() { 
    document.getElementById("pizza").topping[0].checked=true; 
    document.getElementById("btn").onclick=poll; 
} 
onload = init; 

function poll() { 
    var i, isOK, summary=""; 
    var form=document.getElementById("pizza"); 
    for (i=0; i < form.topping.length; i++) { 
     if (form.topping[i].checked) { 
      summary+=form.topping[i].value+" "; 
     } 
    } 
    isOK = confirm("Submit these choices?\n" + summary); 
    if (isOK) { 
     form.submit(); 
    } else { 
     return false; 
    } 
} 

HTML

<form id="pizza" action="poll.php" method="POST"> 
    <div id="panel">Pizza Topping? 
     <input type="checkbox" name="topping" value="Cheese">Cheese</input> 
     <input type="checkbox" name="topping" value="Ham">Ham</input> 
     <input type="checkbox" name="topping" value="Peppers">Peppers</input> 
     <input id="btn" type="button" value="Confirm Choices"></input> 
    </div> 
</form> 

poll.php

<?php 
    echo "<br>***************<br>"; 
    var_dump($_POST); 
    echo '*********************'; 
?> 

JS подтвердить сообщение: Отправить эти выборы? Сыр Перец

Выход poll.php:


массив (размер = 1) 'долива' => строка 'Перцы' (длина = 7)


Так моя проблема: я проверил Сыр и Перец, но я только получил Перец. Может кто-нибудь мне помочь?

+0

вы можете показать ур стороне сервера код? – Alex

+0

В будущем, пожалуйста, подумайте о правильном форматировании кода. – royhowie

+0

@Alex: Я занимаюсь JavaScript, поэтому на самом деле у меня нет кода на стороне сервера. – Hanmelt

ответ

3

Дайте массив как имя (с суффиксом []) на входные элементы

<input type="checkbox" name="topping[]" value="Cheese">Cheese</input> 
<input type="checkbox" name="topping[]" value="Ham">Ham</input> 
<input type="checkbox" name="topping[]" value="Peppers">Peppers</input> 
+0

Что такое «имя строки массива»? – Alex

+0

@Alex извините ..... исправлено –

+0

Не могли бы вы объяснить код ур, почему вы делаете topping []? – Alex

Смежные вопросы