0

为什么这不能设置文本区域的文本?

document.getElementById("code").value = "hey farmer";

我什至尝试过:document.getElementById('code').value = "hey farmer";

有没有办法使用 getElementByName 来设置值?

任何帮助表示赞赏

[html]

    <form>
        <textarea id="code" name="code">
            Lollllllll
</textarea>
    </form>
4

4 回答 4

2

它工作得很好。在

<textarea id=code>Foo</textarea>
<button type=button onclick="document.getElementById('code').value = 'Bar'">

单击按钮时,文本变为“条形”。

HTML5

value 属性必须在获取时返回元素的 API 值;在设置时,它必须将元素的原始值设置为新值,将元素的脏值标志设置为真,然后应该将文本输入光标位置移动到文本字段的末尾,取消选择任何选定的文本并重置选择方向没有。

所以这是指定的行为。


id="code"问题可能是当你的代码运行时你有多个(或零个)元素,所以它得到了错误的元素。


另一个问题可能是你的<textarea>是不可变的。

http://www.w3.org/TR/html5/forms.html

如果 textarea 元素既未禁用也未指定 readonly 属性,则它是可变的。

于 2013-09-19T18:25:12.480 回答
0

如果你在你的 html 之后粘贴你的脚本,它肯定会起作用。下面是工作代码:

http://jsbin.com/EDOJEZ/2/edit?html,输出

我再说一遍,你必须把你的脚本块放在你的 html 标记之后。

于 2013-09-19T18:36:51.693 回答
0

原生 API

document.getElementById("id").value="Radha Mohan"

jQuery API

$("#couponRestrictionBean\\.includeProductIds").val("Radha")
于 2013-09-19T18:23:22.847 回答
0
 <form>
    <textarea id="code" name="code">
        Lollllllll
  </textarea>
</form>

替换为:

<form name="yourform">
    <textarea id="code" name="code">
        Lollllllll
   </textarea>
</form>


document.forms['yourform']['code'].value = 'yourvalue';
于 2013-09-19T18:24:31.523 回答