单击时,动态创建的按钮不会触发

问题描述 投票:-1回答:2

我正在根据用户输入的输入框创建按钮。但是,我已经链接到动态创建的按钮的功能在按下时不会触发。

function btnCreate() {
num++;
userBtn = $("<button>")
userBtn
    .addClass("btn search-term-btn dynamicElement")
    .appendTo($(".btn-holder"))
    .text(topics)
    .attr("data-name", topics);
usedTopics.push(topics + num);
topics = [];
console.log(num);
};

$(".search-term-btn").on("click", ".dynamicElement", function () {
// takes the name of the button 
searchValue = $(".search-term").attr("data-name");
console.log(searchValue);
})

班级是正确的,我已经检查过。我似乎无法弄清楚为什么它没有反应

javascript jquery
2个回答
1
投票

在DOM上创建click事件。

$(document).on("click", ".search-term-btn .dynamicElement", function () {
   console.log(this)
});

0
投票
while you are creating the buttons, you can add the onclick function there..
like userBtn = $("<button onlcikc="somefunction(this)">")

或者你可以使用功能

$('body').on(  "click",".dynamicElement", function() {  
  //your code
}); 
热门问题
推荐问题
最新问题