Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery单击事件在单击之前激发_Javascript_Jquery_Angularjs_Node.js - Fatal编程技术网

Javascript jquery单击事件在单击之前激发

Javascript jquery单击事件在单击之前激发,javascript,jquery,angularjs,node.js,Javascript,Jquery,Angularjs,Node.js,我正在创建一个小的todo应用程序,遇到了一个问题,看起来警报消息在单击事件触发之前运行。看起来事件根本没有注册。有人能告诉我为什么会这样吗 (function() { 'use strict'; var MyTodo = { init: function() { this.cacheDom(); this.bindEvent(); this.addTask(); },

我正在创建一个小的todo应用程序,遇到了一个问题,看起来警报消息在单击事件触发之前运行。看起来事件根本没有注册。有人能告诉我为什么会这样吗

(function() {
    'use strict';
    var MyTodo = {
        init: function() {
            this.cacheDom();
            this.bindEvent();
            this.addTask();

        },
        cacheDom: function() {
            this.$title = $('#inpTitle');
            this.$date = $('#inpDate');
            this.$description = $('#inpDescription');
            this.$addTaskBtn = $('#addTaskBtn');
            this.$pending = $('#pending');
        },
        addTask: function() {
            if (!this.$title.val()) {
                alert('please enter title');
                return;
            }
            var value = '<ul class="todo-task" id="todoList" draggable="true"><li><strong>' + this.$title.val() + '</strong></li>' +
                '<li>' + this.$date.val() + '</li>' +
                '<li>' + this.$description.val() + '</li></ul>';

            this.$pending.append(value);

            // empty inputs
            this.$title.val('');
            this.$date.val('');
            this.$description.val('');
        },
        bindEvent: function() {
            this.$addTaskBtn.on('click', this.addTask.bind(this));

        }

    };

    MyTodo.init();
})();
(函数(){
"严格使用",;
变量MyTodo={
init:function(){
this.cacheDom();
this.bindEvent();
这个.addTask();
},
cacheDom:function(){
此.$title=$(“#inpttitle”);
这个.$date=$(“#inpDate”);
此.$description=$(“#inpsdescription”);
这个.$addTaskBtn=$(“#addTaskBtn”);
这个.$pending=$('#pending');
},
addTask:function(){
如果(!this.$title.val()){
警报(“请输入标题”);
返回;
}
var value='
  • “+this.$title.val()+”
  • '+ “
  • ”+此.$date.val()+“
  • ”+ “
  • ”+这个.$description.val()+”
”; 此.$pending.append(值); //空输入 本.$title.val(“”); 本.$date.val(“”); 本.$description.val(“”); }, bindEvent:function(){ this.$addTaskBtn.on('click',this.addTask.bind(this)); } }; MyTodo.init(); })();
调用
this.addTask()
init
中,将调用
init
方法,因此它将
alert()
。从
init()

(函数(){
"严格使用",;
变量MyTodo={
init:function(){
this.cacheDom();
this.bindEvent();
},
cacheDom:function(){
此.$title=$(“#inpttitle”);
这个.$date=$(“#inpDate”);
此.$description=$(“#inpsdescription”);
这个.$addTaskBtn=$(“#addTaskBtn”);
这个.$pending=$('#pending');
},
addTask:function(){
如果(!this.$title.val()){
警报(“请输入标题”);
返回;
}
var value='
  • “+this.$title.val()+”
  • '+ “
  • ”+此.$date.val()+“
  • ”+ “
  • ”+这个.$description.val()+”
”; 此.$pending.append(值); //空输入 本.$title.val(“”); 本.$date.val(“”); 本.$description.val(“”); }, bindEvent:function(){ this.$addTaskBtn.on('click',this.addTask.bind(this)); } }; MyTodo.init(); })();

悬而未决的
进行中
完整的
添加任务
添加任务
明确任务

调用
this.addTask()
init
中,将调用
init
方法,因此它将
alert()
。从
init()

(函数(){
"严格使用",;
变量MyTodo={
init:function(){
this.cacheDom();
this.bindEvent();
},
cacheDom:function(){
此.$title=$(“#inpttitle”);
这个.$date=$(“#inpDate”);
此.$description=$(“#inpsdescription”);
这个.$addTaskBtn=$(“#addTaskBtn”);
这个.$pending=$('#pending');
},
addTask:function(){
如果(!this.$title.val()){
警报(“请输入标题”);
返回;
}
var value='
  • “+this.$title.val()+”
  • '+ “
  • ”+此.$date.val()+“
  • ”+ “
  • ”+这个.$description.val()+”
”; 此.$pending.append(值); //空输入 本.$title.val(“”); 本.$date.val(“”); 本.$description.val(“”); }, bindEvent:function(){ this.$addTaskBtn.on('click',this.addTask.bind(this)); } }; MyTodo.init(); })();

悬而未决的
进行中
完整的
添加任务
添加任务
明确任务

我已经试过了,但没有帮助。它在页面加载时运行一次。
this。$addTaskBtn=$(“#addTaskBtn”)
设置为首先调用
cacheDom
。OP正在调用
addTask
,原因是触发警报的原因。它似乎只应该在单击时调用event@PatrickEvans我只是做了些改变,仍然在页面加载上启动。我试过了,但没有帮助。它在页面加载时运行一次。
this。$addTaskBtn=$(“#addTaskBtn”)
设置为首先调用
cacheDom
。OP正在调用
addTask
,原因是触发警报的原因。它似乎只应该在单击时调用event@PatrickEvans我只是做了更改,但仍然会在页面加载时触发