elliott.david 2015-11-02 10:09 采纳率: 25%
浏览 14

使用Ajax提交节点JS表单

I am new in Node JS , I want to submit a form using ajax like all we are doing in PHP/CakePHP but here i am facing a problem.

HTMl code

<form role="form" action="javascript:;" id="myform">
        <div class="form-group">
          <label for="name">Name:</label>
          <input type="text" class="form-control" id="name" name="name" placeholder="Enter Name">
        </div>
        <div class="form-group">
          <label for="email">Email:</label>
          <input type="email" class="form-control" id="email" name="email" placeholder="Enter email">
        </div>
        <button type="submit" class="btn btn-default" id="enter">Submit</button>
      </form>

My AJAX code is

$('.btn').click(function(e){ 
          e.preventDefault();
          var data = $('#myform').serialize();
          $.ajax({ 
              url: '/ajax',
              type: 'POST',
              cache: false, 
              data: JSON.stringify(data),
              contentType: 'application/json',
              success: function(data) {
                          console.log(data);
                          console.log(JSON.stringify(data));
                        },
              error: function(jqXHR, textStatus, err){
                   alert('text status '+textStatus+', err '+err);
               }
            })
          });            

app.js code

app.post('/ajax', bodyParser(), function (req, res){

  var obj = {};
  console.log('body: ' + JSON.stringify(req.body));

  var input = JSON.stringify(req.body);
  var data = {

      name    : input.name,
      email   : input.email
  };

  var query = db.query("INSERT INTO users set ?",data, function(err, rows){
  console.log(query.sql);
      if (err)
          console.log("Error inserting : %s ",err );
         res.send({'success' : true, 'message' : 'Added Successfully'});
  });


});

But when i submit this form then it generate an error in node console like

SyntaxError: Unexpected token "
   at parse (D:\man_node
ode_modules\body-parser\lib\types\json.js:83:15)
  • 写回答

1条回答 默认 最新

  • weixin_33713707 2015-11-02 10:31
    关注

    I think that, I am not 100% sure, that you should replace var data = $('#myform').serialize(); with var data = $('#myform').serializeArray();

    评论

报告相同问题?

悬赏问题

  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 Macbookpro 连接热点正常上网,连接不了Wi-Fi。
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题