1

我需要在加载时禁用jsp页面上的下拉菜单。但是,如果禁用了html元素,则不会发布它。我尝试使用与html元素具有相同ID的隐藏元素它仍然没有发布元素。我是使用 struts。任何建议将不胜感激。

谢谢 Minu

4

1 回答 1

1

你的方法很好,但你没有使用正确的属性。是根据请求而name不是id属性发送的。

这是一个简单的示例,说明如何执行此操作(将其保存在名为 的文件中t.html):

<script type="text/javascript">
    function disableCombo() {
        var combo = document.getElementById("comboId");
        var txt = document.getElementById("txtId");
        combo.disabled = true;
        txt.value = combo.value;
    }
</script>

接着...

<body onload="javascript:disableCombo();">
    <form method="get" action="t.html">
        <select name="comboName" id="comboId">
            <option value="v1">Value 1</option>
            <option value="v2" selected="selected">Value 2</option>
            <option value="v3">Value 3</option>
        </select>
        <input type="hidden" name="comboName" id="txtId" value="waiting to see what happens" />
        <input type="submit" value="watch the address bar" />
    </form>
</body>

当您按下提交时,组合的值(已在您禁用加载时的组合时复制到隐藏字段中)在请求中发送。

于 2011-01-11T20:04:42.720 回答