Javascript 重复聊天信息
我正在尝试用socket.io创建一个非常简单的聊天系统 以下是我的html代码:Javascript 重复聊天信息,javascript,socket.io,Javascript,Socket.io,我正在尝试用socket.io创建一个非常简单的聊天系统 以下是我的html代码: <body> <div id="messages"></div> <form action="" id="form" autocomplete="off" onsubmit="event.preventDefault(); myScript();"> <input id="m" autocomplete="off" /><button>
<body>
<div id="messages"></div>
<form action="" id="form" autocomplete="off" onsubmit="event.preventDefault(); myScript();">
<input id="m" autocomplete="off" /><button>Send</button>
</form>
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.4/socket.io.js"></script>
<script src="client.js"></script>
</body>
需要帮忙吗
谢谢明白了
前端js:
var person=提示(“请输入您的姓名”、“姓名”);
var socket=io()
函数myScript(){
emit('chat message',person+:“+document.getElementById(“m”).value);
document.getElementById(“m”).value=“”;
}
socket.on('chat message',函数(msg){
var messages=document.getElementById('messages');
messages.insertAdjacentHTML('beforeend',''+msg+'';
});
socket.on('chat message')
不应进入提交功能
谢谢你的服务器代码是什么?我忘记放了。已更新
var person = prompt("Please enter your name", "Name");
function myScript(){
var socket = io();
socket.emit('chat message', person+":"+document.getElementById("m").value);
document.getElementById("m").value = "";
socket.on('chat message', function(msg){
var messages = document.getElementById('messages');
messages.insertAdjacentHTML('beforeend', '<div>'+msg+'</div>');
});
}
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.use(express.static('public'));
app.get('/', function(req, res){
res.sendFile(__dirname + '/index.html');
});
io.on('connection', function(socket){
socket.on('chat message', function(msg){
io.emit('chat message', msg);
});
});
http.listen(3000, function(){
console.log('listening on *:3000');
});
function myScript(){
socket.emit('chat message', person+":"+document.getElementById("m").value);
document.getElementById("m").value = "";
}
socket.on('chat message', function(msg){
var messages = document.getElementById('messages');
messages.insertAdjacentHTML('beforeend', '<div>'+msg+'</div>');
});