javascript - jquery动态点击事件

标签 javascript jquery

我的一些代码使用jquery创建元素<a>具有给定点击行为的函数:

$(alternatives).each(function (idx, elt) {
  var element = $('<span class="label label-success">');
  var link = $('<a class="prop' + idx + '" title="' + elt + '">' + elt + '</a>');
  link.click(switchLabel);
  element.append(link);
  list.append(element);
});

这里的想法是捕获 <a class="prop1-0" title="myTitle">my link</a> 上的点击事件更改 <span id="corr1-0">my old text</span> 中的文本。两个元素之间的链接由类后缀 f.i. 建立。 1-0 .

我有几双<a>/<span> ,我检查了每个id。

有些链接有效,但有些则无效:控制台中没有错误,Firebug 无法跟踪任何内容...

绑定(bind)的函数是:

function switchLabel(e) {
  $('#corr'+ e.target.className.substr(4)).text($(e.target).attr('title'));
}

您有一些提示可以帮助我跟踪这种不良行为吗? 我在实现过程中可能会犯错误吗?

问候

最佳答案

您的变量不匹配,您使用的是索引而不是 idx 等,并且有更简单的方法来创建元素和事件处理程序?

$.each(alternatives, function (idx, elt) {
    var element = $('<span />', {'class' : 'label label-success',
                                 id      : 'corr'+idx
                                }
        ),
        link    = $('<a />' {id    : 'prop' + idx, 
                             title : elt, 
                             text  : elt
                            }
        );
    link.on('click', function() {
        $('#' + this.id.replace('prop','corr')).text(this.title);
    });
    list.append( element.append(link) );
});

关于javascript - jquery动态点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16525727/

相关文章:

javascript - 使用 MutationObserver 检测何时将节点添加到文档

javascript - 总结一个数字Javascript的所有数字

javascript - 使用 javascript 传递站点属性

jquery - 表格列的相对位置 HTML/JQuery

javascript - Bootstrap 多下拉幻灯片出现问题

javascript - 如何从 Steam 中的其他个人资料获取愿望单数据?

javascript - Primefaces 4.0 尝试调用错误的 tabChange 事件处理程序(TabView 内的 AccordionPanel)

javascript - 用平均值填充数组

javascript - jQuery:当我点击它时滚动条会粘住,导致它在我的鼠标没有按下时滚动。 (以 jsfiddle 为例)

javascript - 更改自动完成的 JSON 输出