问题描述
我想遍历我的 li 项以找到之前列表中已经存在的相似项并将其替换为新项。我实际上是在用 SignalR 制作一个聊天应用程序,我想在其中显示在线用户,一旦用户登录,就会提供并显示来自 Db 的完整用户列表,之后如果有任何其他用户在线,只会附加他的名字已登录用户列表。我的代码是这样的;
chatProxy.client.onlineUser = function (type,list,user,connID,uniqueID) {
listItems = $("#onlineuser").find("li").each(function () {
var product = $(this).attr('class');
alert(product);
});
if (type == "NewUser") {
for (var i in list) {
$("#onlineuser").append(ulamker(list[i]['UserName'],list[i]['Status'],"Your Last Message"));
}
function ulamker(name,status,lastmessage) {
if (status == "ONLINE") {
var finalstring = '<li class="online active" user=' + list[i]['UserName'] + ' userId=' + list[i]['Userid'] + ' connectionID=' + list[i]['ConnectionId'] + '><a class="media"><img class="media-object " src="/Content/img/avatar7.jpg" alt=""> <div class="media-body"><span class="name"><span class="message leftmenuname namehighlight">' + name + ' </span></span> <span class="badge badge-outline status"></span> </div> </a> </li>'
return finalstring;
}
else if (status == "OFFLINE")
{
var finalstring = '<li class="offline" user=' + list[i]['UserName'] + ' userId=' + list[i]['Userid'] + ' connectionID=' + list[i]['ConnectionId'] + '><a class="media"><img class="media-object" src="/Content/img/avatar7.jpg" alt=""> <div class="media-body"><span class="name"><span class="message leftmenuname namehighlight">' + name + ' </span></span> <span class="badge badge-outline status"></span> </div> </a> </li>'
return finalstring;
}
};
}
else if (type == "OldUser") {
$("#onlineuser").append(ulamker1(user,"Online","Your Last Message"));
function ulamker1(name,connection,lastmessage) {
if (status == "Online") {
var finalstring = '<li class="online active" username=' + user + ' userId=' + uniqueID + ' connectionID=' + connID + '><a class="media"><img class="media-object " src="~/Content/img/avatar7.jpg" alt=""> <div class="media-body"><span class="name"><span class="message leftmenuname namehighlight">' + name + ' </span></span> <span class="badge badge-outline status"></span> </div> </a> </li>'
return finalstring;
}
};
}
else
{
}
};
listItems = $("#onlineuser").find("li").each(function () {
var product = $(this).attr('class');
alert(product);
});
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)