gpt4 book ai didi

php - ajax append导致javascript被执行多次

转载 作者:行者123 更新时间:2023-11-30 12:58:24 26 4
gpt4 key购买 nike

我在 PHP 中创建了一个动态表,其中一行中的每个图像在 ID 中都有一个特定的 url。

例如:

当用户点击这张图片时,它会执行一个 Action 。这很好用。

之后,在第二个 ajax 中,它应该使用以前的 url 重新加载颜色框。这也有效,但是,似乎再次加载了 javascript(尽管使用了新值)?

$('#cboxLoadedContent img[alt="markmessage"]').live('click', function(){
var returnurl = "<?php echo $_SESSION['returnpage']; ?>";
var markurl = $(this).attr('id');
alert(markurl);

// Do the action
$.ajax({
method:'GET',
url: markurl,
cache:false
});

// Reload colorbox again with previous contenturl.
$.ajax({
type: 'GET',
url: returnurl,
dataType: 'html',
cache: true,
beforeSend: function() {
$('#cboxLoadedContent').empty();
$('#cboxLoadingGraphic').show();
},
complete: function() {
$('#cboxLoadingGraphic').hide();
},
success: function(data) {
$('#cboxLoadedContent').empty();
$('#cboxLoadedContent').append(data);
}
});
});
</script>

有什么方法可以防止将 javascript 重新附加到颜色框?我尝试了几种方法(比如用 DOM 删除它),但似乎没有任何效果......

javascript 可能不会被禁用,它应该在之后处理一个新的 url...

最佳答案

尝试将第一行的 live 替换为 one:$('#cboxLoadedContent img[alt="markmessage"]').one('click', function(){

关于php - ajax append导致javascript被执行多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18243477/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com