为什么我的元素值没有改变?我使用了错误的功能吗?

dev*_*all 22 javascript textbox

我有一个asp.net mvc应用程序,我正在尝试动态地为我的文本框分配值,但它似乎不起作用(我现在只在IE上测试).这就是我现在所拥有的......

document.getElementsByName('Tue').Value = tue; (顺便说一下tue是一个变量)

我也尝试过这种变化,但它也没有用.

document.getElementsById('Tue').Value = tue; (顺便说一下tue是一个变量)

有人可以告诉我这里哪里出错吗?

Fer*_*yer 23

如何处理文本框取决于HTML代码:

<!-- 1 --><input type="textbox" id="Tue" />
<!-- 2 --><input type="textbox" name="Tue" />
Run Code Online (Sandbox Code Playgroud)

如果您使用'id'属性:

var textbox = document.getElementById('Tue');
Run Code Online (Sandbox Code Playgroud)

为'名字':

var textbox = document.getElementsByName('Tue')[0]
Run Code Online (Sandbox Code Playgroud)

(注意getElementsByName()返回名称为array的所有元素,因此我们使用[0]访问第一个元素)

然后,使用'value'属性:

textbox.value = 'Foobar';
Run Code Online (Sandbox Code Playgroud)


Pau*_*xon 18

它是document.getElementById,而不是document.getElementsByID

我假设你<input id="Tue" ...>的标记中有某处.


Kal*_*lai 5

您的代码中存在两个问题.

  1. getElementByName而不是getElement**s**ByName
  2. 使用value小写而不是Value.


Kni*_*ott 5

如果您使用的是Chrome,请使用控制台进行调试.按SHIFT + CTRL + j以在屏幕上显示控制台.

相信我,它有很大帮助.