【发布时间】:2017-12-18 17:08:20
【问题描述】:
我想通过 onchange() 函数使用 socket.io 将选择框值发送到我的 NodeJS 服务器。
现在,我可以使用如下代码所示的按钮发送;
server.js;
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function(req, res) {
res.sendFile(__dirname + '/index.html');
});
io.on('connection', function(socket) {
socket.on('socketdeneme', function(msg) {
console.log("Message received: " + msg);
});
});
http.listen(2000, function() {
console.log('listening on *:2000');
});
index.html;
<!doctype html>
<html>
<head>
<title>Socket.IO chat</title>
<script src="/socket.io/socket.io.js"></script>
<script src="https://code.jquery.com/jquery-1.11.1.js"></script>
<script type="text/javascript">
$(function () {
var socket = io();
$('form').submit(function() {
socket.emit('socketdeneme', $('#m').val());
});
});
</script>
</head>
<body>
<form action="">
<select id=m multiple>
<option value="dnm">dnm</option>
<option value="dnm1">dnm1</option>
<option value="dnm2">dnm2</option>
</select>
<button>Send</button>
</form>
</body>
</html>
另一方面,下面的代码使用 onchange() 函数发送数据,但我无法将它与 socket.io 一起使用。
<script type="text/javascript">
function submitformfabrika() {
document.formsubmitfabrika.submit();
}
</script>
【问题讨论】:
标签: javascript jquery html node.js socket.io