如何发送数据使用AJAX / jQuery发布节点js的方法?

我有一个udp服务器,每发送一条消息发回不同的消息。 如果我硬编码消息到var消息,然后一切正常。 但是我希望客户端能够手动input消息,然后当刷新button被按下时,Ajax再次发送相同的input消息。 现在,按下button时没有任何反应,因为ajax不知道req.body.number是什么。

你可以使用jQuery的$ .post()方法发送一个json对象,或者你可以使用url编码参数:

JSON:

$.post('/output2', {number: 'value1'}, function(data){ // Do things }); 

url:

 $.post('/output2?number=value1', function(data){ // Do things }); 

要在你的postpath上接收这些参数,你可以使用req.bodyvariables:

 app.post('/output2', function(req, res){ var number = req.body.number; // Do things }); 

你有你的表单设置你不需要jQuery post方法来做到这一点。 如果您确实想要完整的jQuery提交,请将其添加到您的index2.html。

 <script> $(function(){ $(document).on('submit', 'form', function(e){ e.preventDefault(); var formdata = { number: $('input[name="number"]').val() }; $.post('/output2', formdata, function(data){ alert(data); }); }); }); </script> 

从wrxsti修改了一点点代码,我们不需要让var formdata,只是使用:

 $("#submit").on("submit",function (e) { e.preventDefault(); $.post("http://localhost:5000/post/comment",$(this).serialize(), function( data ) { console.log(data); }); });