我正在寻找一种实现显示屏幕的逻辑,该显示屏幕在发生另一页回发时显示一些信息。
更准确地说,我有一个令牌队列管理系统,其中柜台工作人员处理令牌(在token.aspx页面中),并且在发生这种情况时,显示屏(display.aspx)应突出显示该令牌。
这将是实现这一目标的最有效机制
使用SignalR编辑-
我在App_Code中的启动类
using microsoft.Owin;
using Owin;
[assembly: OwinStartup(typeof(Startup1))]
public class Startup1
{
public void Configuration(IAppBuilder app)
{
app.MapSignalR();
}
}
我在App_Code中的Hub类
using microsoft.AspNet.SignalR;
public class MyHub1 : Hub
{
public void Send( string message)
{
Clients.All.addNewMessageToPage( message);
}
}
现在我的页面用于将数据(send.aspx)发送到集线器
<script src="Scripts/jquery-1.6.4.min.js" ></script>
<script src="Scripts/jquery.signalR-2.4.1.min.js"></script>
<script src="/signalr/hubs"></script>
<script>
$(function () {
var chat = $.connection.myHub1;
$.connection.hub.start().done(function () {
$('#sendmessage').click(function () { //sendmessage is a button
chat.server.send( $('#message').val()); //message is a text field
});
});
});
</script>
没有我的Display.aspx页面
<script src="Scripts/jquery-1.6.4.min.js" ></script>
<script src="Scripts/jquery.signalR-2.4.1.min.js"></script>
<script src="/signalr/
<script>
$(function () {
var chat = $.connection.myHub1;
chat.client.addNewMessageToPage = function (message) {
alert(message);
};
});
</script>
我已经测试并验证了Send.aspx页确实将邮件发送到集线器,并且收到了很好的答复。但是Display.aspx页不显示警报。
编辑2
我明白了。实际上我忘了添加$ .connection.hub.start();。在Display.aspx页中。现在一切正常