【问题标题】:Unbind an event with dojo on textbox使用文本框上的 dojo 取消绑定事件
【发布时间】:2020-03-12 16:35:13
【问题描述】:

我有一个链接“prevBtn”,我将一个自定义工具提示连接到它“previewBox”,其中 previewBox 里面有一个文本框和按钮。当我尝试将内容添加到输入框时,它不会让我这样做。它恢复到点击事件。我想向我的文本框添加内容。

this.addEvent(dojo.connect(prevBtn, 'click', this, function (evt) {
            console.log("Edit me");
            this.addTooltip(prevBtn);
        }));

  addTooltip: function(prevBtn) {        
        var previewBox = dojo.create('div', { className: 'prevBox'}, prevBtn);
        dojo.create("span", {className:"arrowUp"}, previewBox); 
        var input = new dijit.form.TextBox({
            required:true, 
            className: "previewInputBox",
            value: "",
            maxLength: 32,
            style: { width: 145+'px', height: 25+'px'}
        }).placeAt(previewBox);
                dojo.create("h3", {className:"borderBottom"}, previewBox);
        var byUser = new dijit.form.Button({
            label: "Preview",
            onClick: dojo.hitch(this, function() {
                //TODO
            })          
        }).placeAt(previewBox);                       
  },

如果不方便理解,我可以提供更多详细信息。谢谢

【问题讨论】:

    标签: javascript events onclick event-handling dojo


    【解决方案1】:

    要在第一次点击后取消绑定事件,我们需要遵循以下代码。

    var handle =  this.addEvent(dojo.connect(prevBtn, 'click', this, function (evt) {
                console.log("Edit me");
                this.addTooltip(prevBtn);
                dojo.disconnect(handle);
            }));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多