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

时间:2016-07-06 13:54:25

标签: javascript jquery safari opera

假设我已经定义了一个名为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的实际值(未定义)。

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

2 个答案:

答案 0 :(得分:3)

通过这个例子希望它对您有用:)



 <!DOCTYPE html>
    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
    $(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>
    </head>
    <body>
    
    <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>
    
    </body>
    </html>
&#13;
&#13;
&#13;

答案 1 :(得分:2)

您必须使用 .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);