1. ホーム
  2. javascript

[解決済み】document.getElementByIDは関数ではありません。

2022-01-19 05:16:17

質問

jQueryを学んでいて、チュートリアルに沿って進んでいたのですが、非常に奇妙なエラーが発生して困惑しています。 以下は私のHTMLです。

<!doctype html>
<html>
  <head>
    <title> Simple Task List </title>
    <script src="jquery.js"></script>
    <script src="task-list.js"></script>
  </head>

  <body>
    <ul id="tasks">

    </ul>
      <input type="text" id="task-text" />
      <input type="submit" id="add-task" />
  </body>
</html>

とjQuery :

$(document).ready(function(){
    //To add a task when the user hits the return key
    $('#task-text').keydown(function(evt){
      if(evt.keyCode == 13)
      {
        add_task(this, evt);
      }
      });
    //To add a task when the user clicks on the submit button
      $("#add-task").click(function(evt){
        add_task(document.getElementByID("task-text"),evt);
        });
    });

function add_task(textBox, evt){
  evt.preventDefault();
  var taskText = textBox.value;
  $("<li>").text(taskText).appendTo("#tasks");
  textBox.value = "";
};

リターンキーを押して要素を追加する場合は、問題ありません。 しかし、Submitボタンをクリックすると、firebugはこのエラーを表示します。

document.getElementByID is not a function
[Break On This Error] add_task(document.getElementByID("task-text"),evt);
task-list.js (line 11)

をjQueryに置き換えて使ってみました。

$("#task-text")

今回のエラーは.

$("<li>").text(taskText).appendTo is not a function
[Break On This Error] $("<li>").text(taskText).appendTo("#tasks");
task-list.js (line 18
which results in the following error

しばらくデバッグを試みていますが、どうしても理解できません。おそらく、本当に愚かな間違いを犯したのでしょう。どんな助けでも最も感謝されます。

編集: jQuery 1.6.1を使っています。

解決方法は?

それは document.getElementById() であって document.getElementByID() . のケーシングを確認してください。 Id .