每次单击列表项时,在事件源URL中发送参数

问题描述 投票:0回答:1

我有列表项,每个人都有一个id,当点击任何列表时,它的id将转到url参数中的事件源

我的代码: -

$(document).on('click','.navbar-menu .online ul li',function(e){
    var id = $(this).attr('id');
    var allmessages = ''; 
    allmessages = new EventSource("/ajaxpages/insertmessage.php?id="+$(this).attr('id')+"");

    allmessages.onmessage = function(event) {
        var data = JSON.parse(event.data);
        $(".message .message-content").html(data);
    };
});

但我发现事件源循环所有列表项的id,所以如何解决这个问题

javascript php eventsource
1个回答
0
投票

您的问题是您正在嵌套事件处理程序。在第一个事件处理程序之外声明allmessages,然后在里面重新定义它:

var allmessages = "";

$(document).on('click','.navbar-menu .online ul li',function(e){
    var id = $(this).attr('id');
    allmessages = new EventSource("/ajaxpages/insertmessage.php?id="+$(this).attr('id')+"");
});

allmessages.onmessage = function(event) {
    var data = JSON.parse(event.data);
    $(".message .message-content").html(data);
};
© www.soinside.com 2019 - 2024. All rights reserved.