您好我刚开始学习SignalR v2。我的aspx页面中有一个textarea,我想在用户按下键时实时更新它。
问题:我在浏览器中打开了2个标签。 如果我输入第一个字符示例“a”,则不会发生任何事情: Tab1 textarea:“a” tab2 textarea:没什么
然后我继续键入第二个字符“b” Tab1 textarea:“ab” tab2 textarea:“a”
结论:它始终没有更新我输入的最新字符!
SignalR Class
public class DocHub : Hub
{
public void Update(String text)
{
this.Clients.Others.updateText(text);
}
}
的Index.aspx
<body>
<form id="form1" runat="server">
<div style="font-size:50px;"> New Document</div>
<textarea rows="4" cols="50" id="ta"></textarea>
<script src="Scripts/jquery-1.10.2.js"></script>
<script src="Scripts/jquery.signalR-2.1.2.js"></script>
<script src="signalr/hubs"></script>
<script type="text/javascript">
$(function () {
var hubProxy = $.connection.docHub;
hubProxy.client.updateText = function (msg) {
$("#ta").val(msg);
};
$("#ta").keydown(function () {
hubProxy.server.update($("#ta").val());
});
$.connection.hub.start();
});
</script>
</form>
</body>
答案 0 :(得分:2)
我真的会尝试使用keyup