未捕获的TypeError:undefined不是函数-Javascript

哈里

我正在尝试使用JavaScript和jQuery创建一个简单的待办事项列表,主要功能之一是能够通过click事件在任何列表项(待处理或已完成)的两种状态之间切换。

这是页面的标记:

<body>
    <div id = 'page'>
        <h2>To Do Items</h2>
        <form id = 'itemForm'>
            <input type='text' id='itemDesc' placeholder='Add Item' />
            <input type='submit' id = 'addBtn' value ='ADD' />
        </form>
        <ul>
            <li class ='pending'>First item</li>
            <li>Second item</li>
            <li>Third item</li>
        </ul>
    </div>
<script type="text/javascript" src='jquery-1.11.2.js'></script> 
<script type="text/javascript" src='todoScriptjQuery.js'></script>  
</body>

这是添加和切换功能的脚本:$(function(){/添加列表项/ var $ newItem = $('#itemDesc'); var $ itemForm = $('#itemForm'); var $ itemValue ;

$itemForm.on('submit', function (e){
    e.preventDefault();
    $itemValue = $('<li class = "pending">');
    $itemValue.append($newItem.val());
    $clear = $('<img class = "icon-invisible">');
    $clear.attr('src', 'Images/png/clear.png');
    $itemValue.append($clear);

    $('ul').prepend($itemValue);
});




/*TOGGLE BETWEEN COMPLETE AND PENDING STATE*/
$('li').on('click', function(e){
    var $target = e.target;
    e.preventDefault();

    switch($target.attr('class')) {
        case 'pending':
            doneItem($target);
            break;
        case 'completed':
            revertItem($target);
            break;
    }
});


function doneItem($target) {
    $target.attr('class', 'completed');
}

function revertItem($target) {
    $target.attr('class', 'pending');
} }); 

我遇到的问题是,切换功能在控制台中记录了一个错误,说:Uncaught TypeError: undefined is not a functionswitch语句开始的那一行。我添加了一个条件只是为了确认我的jQuery是否正确加载并且可以加载。因此,我对接下来的尝试感到迷茫。

任何指针都会有所帮助。谢谢

罗里·麦克罗森(Rory McCrossan)

e.target是DOM元素,而不是jQuery对象,因此没有attr()方法,因此出现undefined错误。您需要将其转换为jQuery对象:

var $target = $(e.target);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Javascript“未捕获的TypeError:对象不是函数”

来自分类Dev

JavaScript OOP:未捕获的TypeError:不是函数

来自分类Dev

Javascript:未捕获的TypeError:不是函数

来自分类Dev

JavaScript WordPress未捕获的typeerror $不是函数

来自分类Dev

未捕获的TypeError:ctx.fillText不是函数(Javascript画布)

来自分类常见问题

未捕获的TypeError:Object.values不是JavaScript函数

来自分类Dev

JavaScript关闭:未捕获的TypeError:counter.value不是函数

来自分类Dev

Javascript。未捕获的TypeError:Hashids不是构造函数

来自分类Dev

Javascript未捕获的TypeError:value.toUpperCase不是函数

来自分类Dev

Javascript-未捕获的TypeError:string不是函数

来自分类Dev

Javascript中的“未捕获的TypeError:x.toUpperCase不是函数”

来自分类Dev

JavaScript错误:未捕获的TypeError:a [b]不是函数

来自分类Dev

Javascript regex .test()“未捕获的TypeError:未定义不是函数”

来自分类Dev

JavaScript代码块中的“未捕获的TypeError:未定义不是函数”

来自分类Dev

javascript [array] .splice无法正常工作(“未捕获的TypeError:collisions.splice不是函数”)

来自分类Dev

javascript-未捕获(承诺)TypeError:e.iterator不是函数。如何解决这种错误?

来自分类Dev

Javascript / Firestore:未捕获(承诺)TypeError:firebase.firestore(...)。collection(...)。doc(...)。collection(...)。set不是函数

来自分类Dev

jQuery / Javascript-未捕获的TypeError:未定义不是一个函数

来自分类Dev

未捕获的TypeError:Undefined不是函数

来自分类Dev

未捕获的TypeError:undefined不是函数

来自分类Dev

未捕获的TypeError:undefined不是jQuery的函数

来自分类Dev

未捕获的TypeError:undefined不是函数

来自分类Dev

未捕获的TypeError:undefined不是函数:67

来自分类Dev

未捕获的TypeError:undefined不是函数

来自分类Dev

未捕获的TypeError:undefined不是函数

来自分类Dev

未捕获的TypeError:undefined不是函数$

来自分类Dev

JavaScript未捕获的Typeerror

来自分类Dev

在对象中调用方法时,Javascript中出现“未捕获的TypeError:未定义不是函数”的错误消息

来自分类Dev

JavaScript错误:未被捕获的TypeError:foo不是函数

Related 相关文章

  1. 1

    Javascript“未捕获的TypeError:对象不是函数”

  2. 2

    JavaScript OOP:未捕获的TypeError:不是函数

  3. 3

    Javascript:未捕获的TypeError:不是函数

  4. 4

    JavaScript WordPress未捕获的typeerror $不是函数

  5. 5

    未捕获的TypeError:ctx.fillText不是函数(Javascript画布)

  6. 6

    未捕获的TypeError:Object.values不是JavaScript函数

  7. 7

    JavaScript关闭:未捕获的TypeError:counter.value不是函数

  8. 8

    Javascript。未捕获的TypeError:Hashids不是构造函数

  9. 9

    Javascript未捕获的TypeError:value.toUpperCase不是函数

  10. 10

    Javascript-未捕获的TypeError:string不是函数

  11. 11

    Javascript中的“未捕获的TypeError:x.toUpperCase不是函数”

  12. 12

    JavaScript错误:未捕获的TypeError:a [b]不是函数

  13. 13

    Javascript regex .test()“未捕获的TypeError:未定义不是函数”

  14. 14

    JavaScript代码块中的“未捕获的TypeError:未定义不是函数”

  15. 15

    javascript [array] .splice无法正常工作(“未捕获的TypeError:collisions.splice不是函数”)

  16. 16

    javascript-未捕获(承诺)TypeError:e.iterator不是函数。如何解决这种错误?

  17. 17

    Javascript / Firestore:未捕获(承诺)TypeError:firebase.firestore(...)。collection(...)。doc(...)。collection(...)。set不是函数

  18. 18

    jQuery / Javascript-未捕获的TypeError:未定义不是一个函数

  19. 19

    未捕获的TypeError:Undefined不是函数

  20. 20

    未捕获的TypeError:undefined不是函数

  21. 21

    未捕获的TypeError:undefined不是jQuery的函数

  22. 22

    未捕获的TypeError:undefined不是函数

  23. 23

    未捕获的TypeError:undefined不是函数:67

  24. 24

    未捕获的TypeError:undefined不是函数

  25. 25

    未捕获的TypeError:undefined不是函数

  26. 26

    未捕获的TypeError:undefined不是函数$

  27. 27

    JavaScript未捕获的Typeerror

  28. 28

    在对象中调用方法时,Javascript中出现“未捕获的TypeError:未定义不是函数”的错误消息

  29. 29

    JavaScript错误:未被捕获的TypeError:foo不是函数

热门标签

归档