0

onclick イベントが呼び出された後に新しい入力ボックスを追加できません。入力ボックスが表示された後に選択オプションを無効にする方法はありますか? このような初心者の質問で申し訳ありませんが、私はここで行き止まりにあり、これを1時間試しています。例を使って JS を簡単に学べる場所へのリンクをお願いします。

   <script>
    function funcGet(val)
    {
      if(val=="Create new category")
      {
         var element = document.createElement("input");
         element.setAttribute("type", "input");
         element.setAttribute("name", "new_cat");
         var foo = document.getElementById("cat");
         foo.appendChild(element);
       }
    }
    </script>
    <div name="cat">
    <form method="post" action="">
    <input type="text" placeholder="Enter a topic name" name="word"><br/>
    <select name = "category" onchange="funcGet(this.value);">
    <?php
       displayCat();
    ?>
    </select>
    </div>
    <select name = "site_type">
    <?php
       displaySitetype();
    ?>
    </select>
    <input type="submit" value="Submit data">
    </form>
4

4 に答える 4

0

ここ

var foo = document.getElementById("cat");nullを与えています

ID の要素が存在しませんcat

エラーは:TypeError:foo is null

于 2013-04-09T12:58:06.710 に答える
0

これを変える:

<div name="cat">

これに:

<div id="cat">
于 2013-04-09T13:01:03.400 に答える
0

に変更<div name="cat">してみてください

<div id="cat">

.getElementById は ID でのみ機能します。

のように

document.getElementById("cat");

離れたい場合は、代わりに<div name="cat">使用する必要があります。.getElementsByTagName[0]

例によって JavaScript を学習するためのリンクとして、W3Schools JavaScript チュートリアルをお勧めします。これは、Web サイトで学習したコードを試すことができるためです。慣れてきたら、Mozilla Developer Networkを参照できます。

于 2013-04-09T13:12:17.337 に答える