我需要在函数回调中获取组标识符和消息。有可能吗?
以下是代码:
$(function () {
// Proxy created on the fly
var chat = $.connection.discussion;
var discussionId = Math.floor(Math.random() * 2);
alert(discussionId);
var discussionId2 = Math.floor(Math.random() * 2);
alert(discussionId2);
$.connection.hub.start(function () {
chat.server.join(discussionId);
chat.server.join(discussionId2);
});
// Declare a function on the chat hub so the server can invoke it
chat.client.addMessage = function (message) {
$('#messages').append('<li>' + message + '</li>');
};
// Start the connection
$.connection.hub.start().done(function () {
$("#broadcast").click(function () {
// Call the chat method on the server
var discussionIdX = Math.floor(Math.random() * 2);
alert(discussionIdX);
chat.server.send(discussionIdX, $('#msg').val());
});
});
});
这只是一个例子。基本上我将用户添加到2个随机组,然后我需要我需要组标识符将消息附加到正确的div。
编辑:
public class Discussion : Hub{
public void Send(string discussionId, string message)
{
Clients.Group(discussionId).addMessage(message);
}
public void Join(string discussionId)
{
Groups.Add(Context.ConnectionId, discussionId);
}}
答案 0 :(得分:1)
将该组作为参数从服务器传递。
在客户端:
chat.client.addMessage = function (message, group) { ... }
并在服务器上:
Clients.Group(discussionId).addMessage(message, discussionId);