2

次のコードでは、エラーが発生します

未定義のプロパティ「AreaSorted」を読み取ることができません

電話をかけると

document.SortingForm.AreaSorted.value = Names.join("\n");

私は何百回もコードを調べてきましたが、なぜこれが起こっているのかわかりません。私はこれで本当に助けていただければ幸いです。

sort.html

<!doctype html>
<html>
<title>Sort</title>
<head>
    <script type="text/javascript" src="sort.js">
    </script>
</head>
<body>
<h1>Sorting String Arrays</h1>
<p>Enter two or more names in the field below,
and the sorted list of names will appear in the
text area.</p>
<form name=”SortingForm”&gt;
Name:
<input type="text" name="FieldWord" size="20" />
<input type="button" name="ButtonAddWord" value="Add" onClick="SortNames();" />
<br/>
<h2>Sorted Names</h2>
<textarea name=”AreaSorted” cols=”60” rows=”10” >
The sorted names will appear here.
</textarea>
</form>

</body>
</html>

sort.js

var Names = new Array();

function SortNames()
{
    Name = document.getElementsByName("FieldWord")[0].value;
    Names.push(Name);
    Names.sort();
    document.SortingForm.AreaSorted.value = Names.join("\n");
}
4

4 に答える 4

2
于 2012-05-01T10:36:57.100 に答える
0

AreaSortedはIDではないので..どちらかを使用してください

document.getElementByName('AreaSorted')[0]

また

..要素にIDを付けて使用するdocument.getElementByIdことをお勧めします。

于 2012-05-01T10:33:03.510 に答える
0

その構文がどこから来たのかはわかりませんが、明らかに機能しません(これ以上)。フォームへの参照を名前で取得するには、を使用する必要がありますdocument.forms

document.forms.SortingForm.elements.AreaSorted.value = names.join("\n");

idただし、推奨される方法は、入力にを割り当て、を使用することdocument.getElementByIdです。

于 2012-05-01T10:49:30.170 に答える
0

テキストエリアにIDを追加して、次を使用してみませんか。

document.getElementById('AreaSorted');

フォームが存在するかどうかに関係なく、これは常に機能するはずです。

また、フォームの名前の前後の引用符がずれているように見える場合は、それらを再入力してみてください。

于 2012-05-01T10:29:35.120 に答える