Node.js通过jquery的ajax来获取参数

来源:互联网 发布:数据分析属于哪一类 编辑:程序博客网 时间:2024/05/19 13:18

这是在前面练习的基础上继续学习发出的心得。在页面刷出数据后想对某些内容执行删除操作,这里用到jquery的ajax,通过ajax传入一个唯一的值,比如collection里面的_id,然后在node处理程序里面接收这个参数,调用remove方法执行删除操作。具体代码如下:

1、我的ajax代码是写在一个页面当中。

$('.my-delete').click(function(){     var id=$(this).attr("data-id");  //在页面当中我直接把数据的_id值刷出来赋给data-id     $.ajax({         type:'post',         url:"/msgDelete",         data:{id:id},         success:function(data){  //以我的写法,这里success是没有执行到的,直接跑到message处理程序,成功删除就over了             if(data){                 console.log('成功了啊');             } else{                  console.log("返回值为空");             }         }     }); })
这里处理url为"/msgDelete",因此需要修改app.js添加msgDelete的处理事件,我是在当前页执行删除操作,因此转向页面也是当前页。

app.get('/msgDelete',message.del);app.post('/msgDelete',message.delMsg);
修改mesage.js里面的del和delMsg方法如下所示。
exports.del = function (req,res){    res.render('home',{title:'Delete Message'})}exports.delMsg = function (req,res){    msgModel.remove({_id:req.body.id},function(err,data){        if(!err){            res.send('true');//删除成功后返回true用于前端ajax的success函数接收的data,这里send的数据格式可以根据需要自己定义        }else{            res.send('false');        }    })}
这里的delMsg是真是实现删除操作的过程,remove()方法的两个参数,第一个是条件,第二个是回调函数,这里我要删除指定一条id的数据,通过req.body.id来获取前面页面ajax传入的参数,删除完成之后,重新调用find方法查找数据库的数据,看看结果是不是正确的,docs为返回的数组列。

具体什么删除之后,相要把这个删除的隐藏啊之类的就不写了,需要的自己研究,反正返回值都已经给出来了。

原创粉丝点击