如何检查事件是否点击?

时间:2017-03-26 23:16:23

标签: javascript jquery

此代码通过按Enter键添加标签:

Start.StartPostModal = TD.Views.Modal_Box.extend({
    events: {
        'keypress input#post_tags'  : 'onAddTags',
    },

    /**
     * add tags
     */
    addTags: function(tags) {

    },

    /**
     * catch event user enter in tax input
     */
    onAddTags: function(event) {
        var val = $(event.currentTarget).val();
        console.log('keypress');
        if (event.which == 13) {
            this.addTags(val);
        }
        return event.which != 13;
    }
});

如何通过点击按钮使其工作?我添加了事件点击并尝试了许多解决方案但失败了。

1 个答案:

答案 0 :(得分:1)

目前还不清楚它是如何运作的。所以,我在这里做了一堆假设,但这是一个想法:

Start.StartPostModal = TD.Views.Modal_Box.extend({
    events: {
        'keypress input#post_tags'  : 'onAddTags',
        'click #myButton' : 'onAddTagsClick',
    },

    /**
     * add tags
     */
    addTags: function(tags) {

    },

    /**
     * catch event user enter in tax input
     */
    onAddTags: function(event) {
        var val = $(event.currentTarget).val();
        console.log('keypress');
        if (event.which == 13) {
            this.addTags(val);
        }
        return event.which != 13;
    },

    onAddTagsClick: function(event) {
      event.preventDefault();
      this.addTags($('input#post_tags').val());
    }

});

假设:

  • 要点击的按钮的ID为myButton
  • 您希望使用addTags的值input
  • 运行post_tags
  • onAddTagsClick根据所使用的库/插件/模块不需要返回任何内容。
  • 您可以按照我假设......
  • 的方式向此添加事件