在没有加入房间的情况下工作正常 显示朋友列表,然后单击,将打开一个新页面,可以与各个朋友聊天
<table>
<tr>
<th>Name</th>
</tr>
{{#each friends}}
<tr>
<td><a href="/chat?name={{this.profileName}}">{{this.profileName}}</a></td>
</tr>
{{/each}}
</table>
然后在socket.io所在的chat_server.js上
socket.join(chatTable);//joining a room ! where problem rises
io.sockets.in(chatTable).emit('db chat message',rows);
然后在网络端
<form action="">
<input id="m" autocomplete="off" /><button>Send</button>
</form>
以及jquery部分
$('form').submit(function(){
socket.emit('chat message', $('#m').val());
$('#m').val()='';
return false;
});
调用加入房间时...页面将刷新,其中url参数(名称)消失,socket.io断开并重新连接。
答案 0 :(得分:1)
我假设chatTable
变量是string。
使用event.preventDefault()
:
$('form').submit(function(event) {
event.preventDefault();
socket.emit('chat message', $('#m').val());
$('#m').val("");//$('#m').val()=' ' ; does not work
});