我很久以前就了解到,对于动态添加的内容,必须使用$(document).on(‘click’,'[ID]’,function(){})来附加侦听器和事件(如click和focus); …等等
$('.friend_chooser_pop').html("<div id='#friend_chooser_list'></div>");
现在我如何访问#friend_chooser_list并设置其HTML值?这些都不起作用:
$('#friend_chooser_list').html('something'); document.getElementById('friend_chooser_list').innerHTML = 'something';
解决方法
这应该有用,你的问题是你在你的id中加了一个#,这里不需要.
这会奏效.
$('.friend_chooser_pop').html("<div id='friend_chooser_list'></div>"); $('#friend_chooser_list').html('something');
如果您打算在ID中包含#并且您希望它工作,您可以像这样使用它:
$("#\\#friend_chooser_list").html('something');
它正在逃避#并允许jQuery无论如何都能获得正确的元素.我不推荐这个,它可以很快混淆.