0

私はこのフォーラムに不慣れで、HTML 入力から JavaScript に値を取得できるようにしたいと考えています。今、私はこのコードを持っています:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PWS</title>
</head>

<body bgcolor="#009933" text="#FFFFFF">
<H1 align="center">PWS Julia en Sophie</H1>
<hr>
<br>

<strong>DOUCHE</strong>
<table>
    <tr>
    <td>Temperatuur</td>
    <td><input type="text" name="dtemp" onClick="calculateTotal()" /></td>
    </tr>
    <tr>
    <td>Tijd</td>
    <td><input type="text" name="dtijd" onClick="calculateTotal()" /></td>
    </tr>
    <tr>
    <td>Hoe vaak per week</td>
    <td><input type="text" name="dfreq" onClick="calculateTotal()" /></td>
    </tr>
</table>

<br>
<strong>BAD</strong>
<table>
    <tr>
    <td>Temperatuur</td>
    <td><input type="text" name="btemp" onClick="calculateTotal()" /></td>
    </tr>
    </tr>
    <tr>
    <td>Hoe vaak per week</td>
    <td><input type="text" name="bfreq" onClick="calculateTotal()" /></td>
    </tr>
</table>

<script type="text/javascript">
    var dTemp = document.getElementsByName("dtemp").value;
    document.write(dTemp);
</script>

明らかに、それは機能していません。dTemp 値が未定義のままであるためです。誰か助けてくれませんか、事前に感謝します、ボブ

4

3 に答える 3

0

getElementsByName1)他の回答で説明されているように、の結果にインデックスを付ける必要があります。に追加[0]document.getElementsByName("dtemp")ます。

document.write2)ページが読み込まれた後に実行されるコードでは使用できません。現在の文書を書かれた内容に置き換えます。代わりに要素に書き込みます。

3) 関数calculateTotalをまったく定義していません。JavaScript コードを関数でラップします。

<div id=result></div>
<script>
function calculateTotal() {
    var dTemp = document.getElementsByName("dtemp")[0].value;
    document.getElementById('result').innerHTML = dTemp; }
</script>

4) 長い道のりがあります。コードは何も計算しようとしないため、計算を開始するために要素を使用することはほとんどありませんonclick(inputむしろ、要素onchangeまたはonclick別のボタン要素で使用する必要があります)。本当に、優れた JavaScript 入門書を読む必要があります。

于 2013-10-14T20:31:53.807 に答える
0

document.getElementsByName("dtemp")要素の配列を提供し、1つずつトラバースして値を取得します。

var elements = document.getElementsByName("dtemp");
var firstValue = elements[0].value;
于 2013-10-14T19:53:33.517 に答える