while循环中的复选框不会给出值

时间:2012-05-18 11:23:53

标签: php jquery database

我正在尝试将所选复选框的所有值都放入textarea中。复选框及其值取自DB。我不知道为什么,但我的textarea给我的唯一的东西是选择某些东西时的'on'这个词。

这些是复选框:

 <div class="controls" id="c_b">
        <?php
            echo "<ul>";
            while($user = $allUsers->fetch_assoc())
            {
                echo "<li><input type='checkbox'> " . $user['username'] . " </input></li>";
            }
            echo "</ul>";
            ?>
            <br />
            </div>

这是功能:

function updateTextArea() {         
     var allVals = [];
     $('#c_b :checked').each(function() {
       allVals.push($(this).val());
     });
     $('#t').val(allVals)
  }
 $(function() {
   $('#c_b input').click(updateTextArea);
   updateTextArea();
 });
提前谢谢, 我希望有人能看到我错过的东西! 亚娜

3 个答案:

答案 0 :(得分:2)

如果您没有在复选框上设置值,则如果选中则默认为on。您需要为每个用户名设置值。

<input type="checkbox" value="bob" />

答案 1 :(得分:1)

您可以将该属性值添加到复选框:http://jsfiddle.net/RNdFS/

答案 2 :(得分:0)

你可以尝试

     $('#c_b input[type=checkbox]:checked').each(function() {
       allVals.push($(this).val());
     });