有關傳遞問題
CONFERENCE.html
socket.on('reload',function(mapid){
alert('有更新,請重整');
LoadMap(mapid);
});
<input type="button" name="reload" value="重整" onclick="reload_status()">
YMAP.js
function reload_status(mapid) {
alert('HI');
socket.emit('reload');
LoadMap(mapid);
}
function LoadMap(mapid) {
if (mapid <=0) mapid = $('#prjselect').val();
if( mapid != null && mapid>0) {
ajaxLoadMap(mapid);
dbarinit();
jQuery('#dropdowntoolbarcontainer').accordion("activate",-1);
}
socket.emit('set_mapid', mapid);
}
app.js
socket.on('reload',function(mapid){
if ( session != undefined){
socket.broadcast.emit('reload',mapid);
//console.log(data);
}
});
請問 這樣子我要怎麼令他們跑到LoadMap()呢 要傳一個Mapid 嗎? 我CONFERENCE.html 已SOCKET.ON 但好像不能到LoadMap() 請指教
6 回复
用的socket.io么? socket.broadcast这个貌似发送端自己是收不到这个通知的。
@jiyinyiyong 代码没有标记??
@marshalys 有收到的 但無法去LoadMap()這個FUNCTION
@lenofire586543 有收到的话,这里注册的回调函数执行了么? socket.on('reload’,function(mapid){ alert(‘有更新,請重整’); LoadMap(mapid); });
reload_status()调用时缺少mapid socket.emit(‘reload’);时没有传递mapid ,错误很多