我如何通过websocket传递表单数据? (socket.io)
<form name="input" action=""> <input type="text" name="say" /> <input type="submit" value="send" /> </form>
我想发送这种forms的数据通过networking套接字服务器,我使用socket.io。
达到这个目标的最好方法是什么?
你需要在表单上使用.serialize() ,如下所示:
var formdata = $('form').serialize();
然后通过websocket传递。 在node.js一边,你可以通过使用querystring.parse得到一个JS对象:
var querystring = require('querystring'); // Data is the data received from the client var result = querystring.parse(data);
你可以试试这个
function getFormData2Object(form){ var un_array = form.serializeArray(); var _array = {}; $.map(un_array, function(n, i){ if(n.name.indexOf('[') > -1 ){ var array = n.name.match(/\[(.*?)\]/); var key = n.name.replace(array[1],"").replace('[',"").replace(']',""); if(!_array[key]){ _array[key] = {}; } _array[key][array[1]] = n['value']; }else{ _array[n['name']] = n['value']; } }); return _array; } socket.emit('blablabla', getFormData2Object( $("form") ) );
祝你好运 :)
- 使用express.js在node.js中为html提供服务的最佳做法是什么?
- NodeJS jQuery“.find”方法不能parsing包含“&nbsp;”的元素
- 在Node JS中执行代码时,不能通过命令访问文件
- 将HTML文件内容传递给JavaScriptvariables
- 我怎么知道为什么我的节点应用程序在Heroku上崩溃? (HTML,Stripe,Heroku,NodeJS)
- 通过Express / Node JS从HTML编辑configuration文件到MongoDB
- 如何合并node.js和html?
- 使用Spotify webAPI播放艺术家(ID)的随机专辑
- 如何将EJS模板转换为string?