根据选定的下拉列表值创建动态复选框

时间:2012-08-28 05:26:03

标签: javascript html forms

我想根据下拉列表中的选定值文本创建一个动态复选框。

例如,下拉列表将包含:

test1test2test3

因此,如果我选择test2,则会创建一个名为test2的复选框,因此会创建动态复选框。

1 个答案:

答案 0 :(得分:2)

HTML

<div id="selectContainer">
    Step 1: 
    <select id="testSelect" name="test">
        <option></option>
        <option value="test1">Test 1</option>
        <option value="test2">Test 2</option>
        <option value="test3">Test 3</option>
    </select>
</div>
<div id="checkboxContainer"></div>​

JS

function callback(event) {
    var input     = document.createElement('input'),
        container = document.getElementById('checkboxContainer');

    if (!this.value &&  !event.srcElement.value) {
        return false;
    }

    input.type = 'checkbox';
    input.name = this.value || event.srcElement.value;

    container.innerHTML = '';
    container.appendChild(input);
}

try {
    // W3C
    document.getElementById('testSelect').addEventListener('change', callback);
} catch (e) {
    // Microsoft
    document.getElementById('testSelect').attachEvent('onchange', callback);
}

演示:http://jsfiddle.net/VGAMR/