使用jquery(动态值)将选中的多个复选框值显示为文本

时间:2016-09-27 16:44:37

标签: javascript php jquery ajax checkbox

将选定的多个复选框值显示为文本。这没有重复,我已经搜索过它。 enter image description here

动态表单值:

<div class="form-group">Eligible Branch
    <select id="eligiblebranch" multiple="multiple" class="form-control" >
        <?php  $branch = $conn->query("SELECT * FROM r_branch  ORDER BY id_branch ASC");
            while ($branchresult = $branch->fetch_assoc()) { ?>
            <option value="<?php echo $branchresult['id_branch']; ?>"> <?php echo $branchresult['branch_name']; ?> </option>
        <?php } ?>
    </select>
</div> 

脚本:

var checked_checkboxes = $("[id*=eligiblebranch] input:checked");
var message = "";
checked_checkboxes.each(function () {
    var value = $(this).val();
    message += + value;
    message += "\n";
});
$("#eligiblebranch1").html(message);

输出应为文本,并且必须在此处显示:

<span id="eligiblebranch1"> </span>

2 个答案:

答案 0 :(得分:1)

要从多个选中的复选框中获取值数组,请使用jQuery map / get functions:

var checkedValues = $('input[type=checkbox]:checked').map(function(_, el) {
    return $(el).val();
}).get();

这将返回带有选中值的数组,如下所示:['1','2']

您可以使用join

将其设为字符串
var checkedValues = $('input[type=checkbox]:checked').map(function(_, el) {
    return $(el).val();
}).get().join(",");

您也可以使用serialize()

console.log($('input[type=checkbox]:checked').serialize());

答案 1 :(得分:1)

我认为你已经有了答案,但需要稍加修改。

var checked_checkboxes = $("[id*=eligiblebranch] input:checked");
var message = "";
checked_checkboxes.each(function () {
    var value = $(this).val();
    message += value;
    message += "<br>";
});
$("#eligiblebranch1").html(message);