更改下拉问题的内容

Change content on dropdown problems

本文关键字:问题      更新时间:2024-05-13

我想要一个下拉菜单,如果我选择value1,我会得到几个输入字段,如果选择value2,我会获得一些其他输入字段。所以我在网上找到了这个代码,我正在努力调整它以适应我的需求。不幸的是,它不起作用,表格总是显示。如果我不使用表(只是纯文本),代码就可以工作。

Javascript

<script type='text/javascript' src='http://jsfiddle.net/js/lib/mootools-core-1.4.5-nocompat.js'></script>
<script type='text/javascript'> 
function showForm(id) {
    document.getElementById('submitForm').style.display = "block";
    if (id == 0) {
        document.getElementById('submitForm').style.display = "none";
    }
    for (var i = 1; i < 4; i++) {
        if (i == id) {
            document.getElementById(i).style.display = 'block';
        } else {
            document.getElementById(i).style.display = 'none';
        }
    }
}
</script>

HTML

<table>
        <tr>
            <td>Selecteer uw materiaal: </td>
            <td>
            <select id="dropdownMenu" name="dropdownMenu" onchange="javascript: showForm(document.getElementById('dropdownMenu').value);">
                <option value="0">Choose an option</option>
                <option value="1">Option 1</option>
                <option value="2">Option 2</option>
                <option value="3">Other</option>
            </select></td>
        </tr>
    <div id="1" style="display: none;">
    <tr>
        <td>Aantal videobanden: </td>
        <td><input type="text" name="aantalVideo" value="" /></td>
    </tr>
    <tr>
        <td>Geschatte speelduur (in minuten): </td>
        <td><input type="text" name="duurVideo" value="" /></td>
    </tr>
    </div><!-- /1 -->
    <div id="2" style="display: none;">
    <tr>
        <td>Aantal spoelen: </td>
        <td><input type="text" name="aantalSpoelen" value="" /></td>
    </tr>
    <tr>
        <td>Geschatte speelduur (in minuten): </td>
        <td><input type="text" name="duurSpoelen" value="" /></td>
    </tr>       
    </div><!-- /2 -->
    <div id="3" style="display: none;">
    <tr>
        <td>&nbsp;</td>
        <td>Overig</td>
    </tr>
    </div><!-- /3 -->
    <div id="submitForm" style="display: none;">
    <tr>
        <td>&nbsp;</td>
        <td><input value=" Order aanmaken " type="submit"></td>
    </tr>
    </div><!-- /submitForm -->
    </table>

为什么不将这些id赋予tr元素,而不是创建div。我试着更改了一些页面结构。它奏效了。我将给定给div元素的id分配给其中的tr元素,这就成功了。