首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >document.getElementByID不是一个函数

document.getElementByID不是一个函数
EN

Stack Overflow用户
提问于 2011-06-20 17:54:19
回答 5查看 190.7K关注 0票数 49

我正在学习jQuery,并且正在学习一个教程,一个非常奇怪的错误让我感到困惑。下面是我的html:

代码语言:javascript
复制
<!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:

代码语言:javascript
复制
$(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会显示以下错误

代码语言:javascript
复制
document.getElementByID is not a function
[Break On This Error] add_task(document.getElementByID("task-text"),evt);
task-list.js (line 11)

我尝试使用jQuery,而不是用

代码语言:javascript
复制
$("#task-text")

这次的错误是:

代码语言:javascript
复制
$("<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

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-06-20 17:55:47

这是document.getElementById()而不是document.getElementByID()。检查外壳是否有Id

票数 133
EN

Stack Overflow用户

发布于 2011-06-20 17:55:21

我是getElementById()

请注意Id中的小写d

票数 19
EN

Stack Overflow用户

发布于 2011-06-20 18:03:22

我已经修改了您的脚本以使用jQuery,如果您希望这样做的话。

代码语言:javascript
复制
$(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($("#task-text"),evt);
    });
});

function add_task(textBox, evt){
  evt.preventDefault();
  var taskText = textBox.val();
  $("<li />").text(taskText).appendTo("#tasks");
  textBox.val("");
};
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6409505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档