Struts 禁用字段

发布于 2024-10-11 21:29:06 字数 131 浏览 5 评论 0原文

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

谢谢 米努

I need to disable a dropdown on jsp page when it loads.However the html element will not be posted if it is disabled.I tried using a hidden element with the same id as the html element it still does not post the element.I am using struts.Any advice would be appreciated.

Thanks
Minu

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小鸟爱天空丶 2024-10-18 21:29:06

您的方法很好,但您没有使用正确的属性。 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>

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

Your approach was good but you didn't use the proper attribute. The name is sent on the request not the id attribute.

Here is a simple example on how to do it (save this in a file named 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>

and then...

<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>

When you press submit, the value of the combo (already copied in the hidden field when you disabled the combo on load) is sent on the request.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文