22

asp.net mvc アプリケーションがあり、テキスト ボックスに値を動的に割り当てようとしていますが、機能していないようです (現在 IE でのみテストしています)。これは私が今持っているものです..

document.getElementsByName('Tue').Value = tue;(ちなみにtueは変数です)

このバリエーションも試しましたが、うまくいきませんでした。

document.getElementsById('Tue').Value = tue;(ちなみにtueは変数です)

これでどこが間違っているのか教えてください。

4

7 に答える 7

23

テキストボックスのアドレス指定方法は、HTML コードによって異なります。

<!-- 1 --><input type="textbox" id="Tue" />
<!-- 2 --><input type="textbox" name="Tue" />

「id」属性を使用する場合:

var textbox = document.getElementById('Tue');

「名前」の場合:

var textbox = document.getElementsByName('Tue')[0]

( getElementsByName() は名前を持つすべての要素を配列として返すことに注意してください。したがって、[0] を使用して最初の要素にアクセスします)

次に、'value' 属性を使用します。

textbox.value = 'Foobar';
于 2009-01-25T11:08:10.670 に答える
18

これはdocument.getElementsByIDではなく、 document.getElementsById です。

マークアップのどこ<input id="Tue" ...>かにあると思います。

于 2009-01-25T11:05:21.817 に答える
5

Chrome を使用している場合は、コンソールでデバッグします。SHIFT+CTRL+j を押して、コンソールを画面に表示します。

私を信じてください、それは大いに役立ちます。

于 2012-09-29T06:33:41.180 に答える
5

コードには 2 つの問題があります。

  1. getElementByNameの代わりに使用getElement**s**ByName
  2. valueの代わりに小文字の を使用しValueます。
于 2011-11-17T12:03:42.803 に答える
4

テキストボックスの名前と ID の両方が「Tue」に設定されていると想定する必要があるようです。その場合は、.value に小文字の V を使用してみてください。

于 2009-01-25T11:02:44.457 に答える
4

複数形がgetElementsByName()示すように、常にこの名前を持つ要素のリストを返しますか。したがって、その名前の入力要素がある場合:

<input type="text" name="Tue">

そして、それはその名前を持つ最初のものdocument.getElementsByName('Tue')[0]です。この名前を持つ要素のリストの最初の要素を取得するために使用する必要があります。

それに加えて、大文字と小文字が区別されるプロパティがあり、値プロパティの正しいスペルは です.value

于 2009-01-25T11:08:39.407 に答える
4

使用できます

formname.textboxname.value="delete";
于 2013-03-29T12:55:55.697 に答える