更改下拉列表问题的内容

时间:2012-07-31 10:03:19

标签: javascript drop-down-menu

我想要一个下拉菜单,如果我选择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>

1 个答案:

答案 0 :(得分:1)

为什么不将这些id赋予tr元素而不是创建div。我尝试改变一些页面结构。有效。我将给予div元素的id分配给它们中的tr元素并且它有效。