加载聊天消息未按预期工作



这是我发送实时消息的代码。

发送消息后,除非我刷新页面,否则它不会显示。

我希望此聊天框消息显示输入的新消息。 这是为了在页面左侧显示用户列表:

$(".user-w").click(function() {
var user_id = $(this).attr("id");
// alert(user_id);
$.ajax({
type: "POST",
url: "<?php echo base_url('Message/getMessageByLists/')?>",
data: {
'user_id': user_id
},
datatype: 'html',
success: function(data) {
$("#loadMessages").html(data);
}
}); }); 

这是发送函数:

$("#sendMessage").click(function(e) 
{e.preventDefault();// alert("test");
var msg = $("#message_text").val();
var touser = $("#touser").val();
//var reservation_id = $("#reservation_id").val();
if (!msg || msg.length == 0) {
alert("enter a message");
} else {
$.ajax({
type: "POST",
url: "<?php echo base_url('Message/addMessage')?>",
//  data:{'msg' : msg, 'touser' : touser, 'reservation_id' : reservation_id},
data: {
'msg': msg,
'touser': touser
},
datatype: 'text',
//  Page.Server.ScriptTimeout = 300;
success: function(data) {
if (data == 1) {
//$("#loadMessages").load();
$("#message_text").val("");
} else {
alert("noo eroor chat message");
}
},
});
//return false;
}  }); // End Send Function

如果我没记错的话,它们可能是一个类为"user-w"的元素,该元素也有"id"属性。因此,您可以在将消息发送给用户后执行以下行。

$(".user-w[id='"+ touser +"']").trigger("click");

上行需要放在"成功"方法中,如下所示:

if (data == 1) {
//$("#loadMessages").load();
$("#message_text").val("");
$(".user-w[id='"+ touser +"']").trigger("click");
} else {
alert("noo eroor chat message");
}

最新更新