从复选框中获取选中的值

时间:2014-05-31 11:56:50

标签: php html

我有这个复选框,我需要获取其检查值:

在这个例子中,我希望得到 Ubuntu ,因为它已被检查。

<div class="checkbox">
    <label for="my_label_3-4">
        <input id="my_label_3-4" type="checkbox" value="5" name="my_label_3[]" aria-invalid="false"></input>
        Windows 7, 8
    </label>
</div>
<div class="checkbox">
    <label for="my_label_3-5">
        <input id="my_label_3-5" type="checkbox" value="6" name="my_label_3[]" aria-invalid="false"></input>
        Mac OS
    </label>
</div>
<div class="checkbox">
    <label for="my_label_3-6">
        <input id="my_label_3-6" type="checkbox" checked="" value="7" name="my_label_3[]" aria-invalid="false"></input>
        Ubuntu                                  
    </label>
</div>
<div class="checkbox">
    <label for="my_label_3-7">
        <input id="my_label_3-7" type="checkbox" value="8" name="my_label_3[]" aria-invalid="false"></input>
        FreeBSD
    </label>
</div>

我该怎么做?

这是我到目前为止所做的,但没有返回任何结果:

echo 'checkbox';
foreach ($html->find('my_label_3') as $id) {
    echo $id; // returns 'checkbox'
}

使用Simple HTML Dom解析过程

1 个答案:

答案 0 :(得分:1)

尝试使用label来识别节点,因为 Ubuntu 不是input的值。它是label的文本,input的值为7。

foreach ($html->find('label[for^="my_label_3-"') as $label) {
    if (!empty($label.find('input[checked]'))){
        echo $label->innertext;
    }
}