Я кодирую чат-программу, но я застрял в этой части.вызов функции javascript из другой функции
var Controller=function conversation() {
this.createMessageNode=function(msg,sender,time,mid){
var newMessage;
if(sender==sessionStorage.getItem('userid')){
newMessage="<div class='message-sent' id='"+mid+"'>"+msg+"<span class='time'>"+time+"</span></div>";
}else{
newMessage="<div class='message-recv' id='"+mid+"'>"+msg+"<span class='time'>"+time+"</span></div>";
}
sessionStorage.setItem('lastMessage',mid);
$('.chat-messages').append(newMessage);
}
this.getMessages=function(){
if(sessionStorage.getItem('lastMessage')==null){
sessionStorage.setItem('lastMessage',0);
}
$.ajax({url:"getmessages.php",type:"POST",data:{last:sessionStorage.getItem('lastMessage'),cid:sessionStorage.getItem('conversationid')},success:function(result) {
var messages=JSON.parse(result);
for (var i = 0; i < messages.length; i++) {
createMessageNode(messages[i].message,messages[i].sender,messages[i].time,messages[i].mid);
var cont=document.getElementById('chat-messages');
cont.scrollTop=cont.scrollHeight;
};
}});
}
}
теперь, когда я сделать это он показывает сообщение об ошибке
Uncaught ReferenceError: createMessageNode is not defined
В настоящее время в течение цикла «эта» переменная со ссылкой на объект Ajax. как я могу вызвать функцию createMessageNode?
возможно дубликат (http://stackoverflow.com/questions/3809862/can-we-call-the-function -written-in-one-javascript-in-another-js-file) – abc123
try 'this.createMessageNode (сообщения [i] .message, messages [i] .sender, сообщения [i] .time, messages [i]. mid); ' – stackoverfloweth
, когда я использую this.create .... он показывает эту ошибку' Uncaught TypeError: this.createMessageNode не является функцией ' –