jquery的append添加的li和a点击没反应

想做的是点击按钮可以添加li标签(li标签里面有a标签),并添加一个div,通过锚点,点击li显示div块

现在是点击了按钮可以生成li和div,但是点击li,div也没反应,别的li点击可以显示div,就是添加的不可以

用的是bootstrap的组件

clipboard.png

生成的li和div图片描述
图片描述

function saveLi(){
    var demo = $("input[id='tabname']").val();
    $("#tabLi").append("<li><a href="+"#"+demo+">"+demo+"</a></li>");
    $(".tab-content").append("<div class='tab-pane' id="+demo+">"+demo+"tab!</div>");
    alert("添加成功");
}
<button type="button" class="btn btn-primary" id="saveTab" onclick="saveLi()">保存</button>
阅读 7.3k
4 个回答
$("#tabLi").append("<li><a href="+"#"+demo+">"+demo+"<a></li>");

结尾应该是 </li> (你少了/)

应该是div那一句引号的位置不太对?或者你看看是不是样式有问题~

一般这种我都习惯倒过来写,比较不容易错,比如你这个就是:

$('<a>').attr('href', '#'+demo).text(demo).wrap('<li>').appendTo('#tabLi');
$('<div>').addClass('tab-pane').attr('id',demo).text(demo+'tab!').appendTo('.tab-content');

另外建议把那个alert去掉,因为它有阻断主线程的副作用,如果需要还是建议用console.log。

不要直接在元素上绑定事件,试试$('.tap-pane').on(‘click’,function(){});还是不行再试试 $(document).on('click','.tap-pane',function(){})

新手上路,请多包涵

动态添加的添加事件用on(),不知道是不是这个意思

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题