0

いくつかのコードをテストしたところですが、これを機能させることができません:

<HTML>
<head>

<title> Page 1 </title>

<script>
function myFunction()
{
var x=document.getElementById("myEmail")
document.write(x)
}
</script>

</head>

<body>

<form>
<p> Input your email </p>
<input name="myEmail" type="text">
</form>

<button type="button" onclick="myFunction()">Submit Email</button>

</body>

</HTML>

私がしようとしているのは、ユーザーに何かをテキストに入力させ、パーサーが読み取って変数に入れ、変数を画面に出力することだけです。これを知っていれば、他のプロジェクトで大いに役立つでしょう。誰でも助けることができますか?注: HTML5 は好きなタグがいくつか削除されるので使いたくないので、HTML 4.01 などを使用できますか?

4

4 に答える 4

3

ステップ 1 では、HTML 5 を使用し、コードをインデントし、セミコロンを使用します。

<!DOCTYPE html>

<html>
    <head>
        <title> Page 1 </title>

        <script>
        function myFunction() {
            var x = document.getElementById("myEmail");
            document.write(x);
        }
        </script>
    </head>
    <body>
        <form>
            <p> Input your email </p>
            <input name="myEmail" type="text">
        </form>

        <button type="button" onclick="myFunction()">Submit Email</button>
    </body>
</html>

ステップ 2 は、書かれている内容を見て、それが であることを確認しnull、いつ返されるかを直観document.getElementByIdし、ドキュメントに ofをnull持つ要素がないことを認識することです。があるだけです。途中でフォームをドロップします。idmyEmailname

<body>
    <p>Input your email </p>
    <input id="myEmail" type="text">
    <button type="button" onclick="myFunction()">Submit Email</button>
</body>

次のステップは、それをもう一度試してみてx、それが文字列ではなく要素であり、その値を取得したいことを理解することです。

function myFunction() {
    var x = document.getElementById("myEmail");
    document.write(x.value);
}

「良い将来の実践」の手順は、順不同です。

  • スクリプトを一番下に置き、インライン イベント リスナーの使用をやめる
  • スクリプトを外部ファイルに入れる
  • 使う<label>

電子メールを返信するよりも有益なことをしない場合はdocument.body.appendChild(document.createTextNode(…))、 を使用することも検討してください。これにより、ドキュメントの残りの部分が消去されることはありません。DOM は本当に素晴らしいです。

于 2013-11-05T03:13:25.000 に答える
0

input type="text" の name 属性の値と同じ値を持つ id 属性を追加し、要素自体の代わりに値を保存するようにスクリプトを変更するだけです。

<html>
<head>
<title> Page 1 </title>
<script>
    function myFunction()
    {
    var x=document.getElementById("myEmail").value;
    document.write(x);
    }
</script>
</head>
<body>
    <form>
    <p> Input your email </p>
    <input name="myEmail" id="myEmail" type="text">
    </form>
<button type="button" onclick="myFunction()">Submit Email</button>
</body>
</html>
于 2013-11-05T03:47:51.393 に答える
0

入力に ​​ID を追加する

<input name="myEmail" type="text" id="myEmail">

次に、値を書き込みます

document.write(x.value)
于 2013-11-05T03:12:52.967 に答える
0

document.getElementById は DOM 要素を返します。DOM 要素の出力は意味がなく、その出力はブラウザーによって異なる場合があります。

必要なのは、入力フィールドの入力値を出力することなので、valueプロパティを確認してください。

function myFunction()
{
var x=document.getElementById("myEmail").value
document.write(x)
}

次に、HTML コードには要素に ID 属性がないため、getElementById ルックアップは失敗します。ID を追加します。

<input name="myEmail" type="text" id="myEmail">

HTML 4 と HTML 5 に関する注意事項について。

注: HTML5 は好きなタグがいくつか削除されるので使いたくないので、HTML 4.01 などを使用できますか?

そのコメントは興味深い。あなたが参照しているタグを具体的に知らなければ、それらが削除された理由を言うことはできませんが、同等のものがある可能性が高いと思います. HTML 5 は、私が認識している HTML の機能を削除しません。

それは、オートマチック車にはクラッチがないから運転しないと言っているようなものです。

于 2013-11-05T03:13:09.827 に答える