Node.js通過jquery的ajax來擷取參數__js

來源:互聯網
上載者:User

這是在前面練習的基礎上繼續學習發出的心得。在頁面刷出資料後想對某些內容執行刪除操作,這裡用到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為返回的數組列。

具體什麼刪除之後,相要把這個刪除的隱藏啊之類的就不寫了,需要的自己研究,反正傳回值都已經給出來了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.