每当我使用ajax从我的服务器获取新的HTML,然后jQuery修改我的页面上的当前HTML,插入的新jQuery不响应我在我的页面上的JavaScript。插入的HTML没有响应jQuery
例如,当我有这样的代码:
<td id="is_admin_14">
<i class="fa fa-check-circle success"></i>
<a class="subtle-link demote-member" href="demote-link"> <small>Demote</small></a>
</td>
<script type='text/javascript'>
$(document).ready(function($) {
function updateAdminStatus(url) {
$.post(url, function(data) {
console.log(data)
var cell = $('#is_admin_'+data.member_pk);
cell.html(data.html)
}).fail(function() {
// handle unexpected error here
alert("error");
});
}
$('.promote-member, .demote-member').click(function(event) {
event.preventDefault();
updateAdminStatus($(this).attr('href'));
});
});
</script>
和我点击.demote交换机的链路,阿贾克斯后是送的,我得到的HTML回来了,我重新填充表格单元格与返回的HTML,它是这样的:
<td id="is_admin_14">
<i class="fa fa-times-circle danger"></i>
<a onclick="return false;" class="subtle-link promote-studio-member" href="promote-link"><small>Promote</small></a>
</td>
现在,当我点击推广工作室成员的链接,而无需重新加载页面,jQuery的被完全忽略,并尝试导航到HREF链接,因为它如果没有提供jQuery的话。我无法在同一页面上继续提升和降低自己的心愿。 (另外请注意,我甚至试图把onclick='return false;'
放在那里,但链接仍然会触发。)
为什么会发生这种情况,并且有什么办法可以让新的html响应jQuery?
不为我做。链接始终触发 – rfj001 2014-11-21 07:22:15
尝试编辑的代码。 – Jinandra 2014-11-21 07:31:29
这样做。感谢代码和简短的解释。 – rfj001 2014-11-21 07:32:01