如果没有在 Signalr Chat 中输入用户名,如何显示默认用户名
How to Display a Default Username if no Username is Entered in Signalr Chat
使用站点 code.msdn.microsoft.com/SignalR-Getting-Started-b9d18aa9 上的 SignalR 入门应用程序,当用户单击确定而不输入用户名时,我如何将默认显示从大点更改为 "Anonymous" ?
我是 javascript 的新手。我在代码中搜索了用户名引用和点,但无济于事。例如,在行下方的 default.html 文件中(大约 #40):
$('#displayname').val(prompt('Enter your name:', ''))
我补充道:
if ($('#displayname').val() != '' || $('#displayname').val() == null)
{
$('#displayname').val(prompt('Enter your name:', ''))
}
else if ($('#displayname').val() == null || $('#displayname').val() == '') {
$('#displayname') = "Anonymous";
}
但是,这并没有得到工作 done.The 点仍然显示。任何人都可以给我一些关于如何进行此更改以显示 "Anonymous" 的指导吗?谢谢。
我还没有读过你的例子,但是如果 UserName
是通过服务器端方法 name
创建的。那么您需要执行以下操作:
public void Send(string name, string message)
{
Clients.All.broadcastMessage(name, message);
}
那么当您调用 Send
.
时,您应该尝试以下操作
public void Send(string name, string message)
{
var user = name;
if(string.IsNullOrEmpty(user))
user = "Anonymous";
Clients.All.broadcastMessage(user, message);
}
理论上可以解决您的问题,因为 JavaScript 没有解决您的问题。
但是,我相信客户端的以下内容将是您问题的根源。
chat.client.broadcastMessage = function (name, message) {
var encodedName = $('<div />').text(name).html();
var encodedMsg = $('<div />').text(message).html();
$('#discussion').append('<li><strong>' + encodedName
+ '</strong>: ' + encodedMsg + '</li>');
};
您可以在其中更正您的无效 username
。希望这能解决问题或为您指明正确的方向。如果没有更多与您的电话地点相关的信息,我将帮不上什么忙。
使用站点 code.msdn.microsoft.com/SignalR-Getting-Started-b9d18aa9 上的 SignalR 入门应用程序,当用户单击确定而不输入用户名时,我如何将默认显示从大点更改为 "Anonymous" ?
我是 javascript 的新手。我在代码中搜索了用户名引用和点,但无济于事。例如,在行下方的 default.html 文件中(大约 #40):
$('#displayname').val(prompt('Enter your name:', ''))
我补充道:
if ($('#displayname').val() != '' || $('#displayname').val() == null)
{
$('#displayname').val(prompt('Enter your name:', ''))
}
else if ($('#displayname').val() == null || $('#displayname').val() == '') {
$('#displayname') = "Anonymous";
}
但是,这并没有得到工作 done.The 点仍然显示。任何人都可以给我一些关于如何进行此更改以显示 "Anonymous" 的指导吗?谢谢。
我还没有读过你的例子,但是如果 UserName
是通过服务器端方法 name
创建的。那么您需要执行以下操作:
public void Send(string name, string message)
{
Clients.All.broadcastMessage(name, message);
}
那么当您调用 Send
.
public void Send(string name, string message)
{
var user = name;
if(string.IsNullOrEmpty(user))
user = "Anonymous";
Clients.All.broadcastMessage(user, message);
}
理论上可以解决您的问题,因为 JavaScript 没有解决您的问题。
但是,我相信客户端的以下内容将是您问题的根源。
chat.client.broadcastMessage = function (name, message) {
var encodedName = $('<div />').text(name).html();
var encodedMsg = $('<div />').text(message).html();
$('#discussion').append('<li><strong>' + encodedName
+ '</strong>: ' + encodedMsg + '</li>');
};
您可以在其中更正您的无效 username
。希望这能解决问题或为您指明正确的方向。如果没有更多与您的电话地点相关的信息,我将帮不上什么忙。