如何在 javascript 中设置表单的输入值?

How can I set the input value of a form in javascript?

假设我定义了一个表单 (my_form),它有一个名为 myInput 的输入。我想将 myInput 的值设置为 my_string

$('#my_form textarea[name=myInput]').value = my_string;

我已经尝试了上面的代码,这适用于大多数浏览器,但不适用于 Opera/Safari。我知道它不适用于 Opera/Safari 因为行

console.log($('#my_form textarea[name=myInput]').value + " was the string");

undefined was the string 记录到屏幕而不是 my_string 的实际值(这不是未定义的)。

如何为这些浏览器实现此目的?

您必须使用 .val() 而不是 .value。以及字符串的引号。

所以最终代码将是:

$("#my_form textarea[name=myInput]").val("my_string_with_quotes_before_and_after");

或使用变量

var string="some text";
$("#my_form textarea[name=myInput]").val(string);

试试这个例子:

$(document).ready(function () {
    $("#btn1").click(function () {
        $("#test1").text("Hello world!");
    });
    $("#btn2").click(function () {
        $("#test2").html("<b>Hello world!</b>");
    });
    $("#btn3").click(function () {
        $("#test3").val("Dolly Duck");
    });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<p id="test1">This is a paragraph.</p>
<p id="test2">This is another paragraph.</p>

<p>Input field: <input type="text" id="test3" value="Mickey Mouse"></p>

<button id="btn1">Set Text</button>
<button id="btn2">Set HTML</button>
<button id="btn3">Set Value</button>