小编典典

使用 jQuery 的“.val()”在表单中设置隐藏字段的值不起作用

all

我一直在尝试使用 jQuery 在表单中设置隐藏字段的值,但没有成功。

这是一个解释问题的示例代码。如果我将输入类型保持为“文本”,它可以毫无问题地工作。但是,将输入类型更改为“隐藏”是行不通的!

<html>

    <head>
        <script type="text/javascript" src="jquery.js">
        </script>
        <script type="text/javascript">
            $(document).ready(function() {
                $("button").click(function() {
                    $("input:text#texens").val("tinkumaster");
                });
            });
        </script>
    </head>

    <body>
        <p>
            Name:
            <input type="hidden" id="texens" name="user" value="texens" />
        </p>
        <button>
            Change value for the text field
        </button>
    </body>

</html>

我还尝试了以下解决方法,将输入类型设置为“文本”,然后对输入框使用“显示:无”样式。但是,这也失败了!似乎 jQuery
在设置隐藏或不可见的输入字段时遇到了一些麻烦。

有任何想法吗?有没有真正有效的解决方法?


阅读 62

收藏
2022-07-02

共1个答案

小编典典

:text类型值为 的输入将失败hidden。使用它也更有效:

$("#texens").val("tinkumaster");

ID 属性在网页上应该是唯一的,请确保您的 ID 属性是唯一的,因为这可能会导致您遇到任何问题,并且指定更复杂的选择器只会减慢速度并且看起来不那么整洁。

http://jsbin.com/elovo/edit中的示例,使用http://jsbin.com/elovo/2/edit中的示例代码

2022-07-02