【问题标题】:show the list of usernames inside a div在 div 中显示用户名列表
【发布时间】:2012-11-26 10:21:53
【问题描述】:

我是 jQuery 的新手。在我的项目中,我创建了一个ClassUser,代码如下:

 static ConcurrentDictionary<string, User> _users = new ConcurrentDictionary<string, User>();
 //
 //  some function to add values to _users list
 //
 public List<User> GetConnectedUsers()
 {
      return _users.Values.ToList();
 }

我想在div #showUsernames 中显示这个值列表。如何使用 jQuery 做到这一点?

我试过下面没有显示任何东西

    /*display your contacts*/
    $('#showUsernames').append(function(){
        chat.server.getConnectedUsers();
    });

其中chat.server(signalr) 调用服务器端代码(聊天类)..
我认为解决方案与信号器无关。

如果以上描述还不够,可以看我的代码here

编辑:User.cs

public class User
{
    public User(string ConnID, string Username)
    {
        Name = Username;
        ConnectionID = ConnID;
    }
    public string Name { get; set; }
    public string ConnectionID { get; set; }
}

【问题讨论】:

    标签: c# javascript jquery asp.net signalr


    【解决方案1】:

    对服务器的调用是异步的(就像所有 javascript ajax 调用一样)。附加一个 .done 处理程序以获取结果(这都在文档https://github.com/SignalR/SignalR/wiki/SignalR-JS-Client-Hubs 中)。

    把你的代码改成这样:

    chat.server.getConnectedUsers().done(function(users) {
        for(var i = 0; i < users.length; ++i) {
            // Write javascript here to append users to the list
        }
    });
    

    【讨论】:

    • 感谢您的回复。实际上我的User 类有两个参数...所以上面的代码没有显示任何内容。上述代码中的usersusernameConnectionId 组成。那么如何获得这两个值。我用User.cs 编辑了我的帖子。请检查..我试过users.Name.Length(不工作)
    • 这仍然不起作用。因为users 有两个属性.. name 和 connectionId(User 类构造函数的两个参数)。如何向他们展示?请检查我编辑的问题。
    • 我不知道你在问什么。你想让我告诉你如何用javascript更新html吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    • 1970-01-01
    • 2021-11-23
    • 2016-08-22
    • 2012-08-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多