2016-05-11 15 views
0

ノードと翡翠で特定のIDを持つ投稿要求を送信するのがいくつか困難です。投稿を玉ループに送信

は、私はノードの本のリストを返すとしましょう:

res.render('tests', {books: books}); 

マイジェイドテンプレートは、それらをループによってすべての書籍のリストが表示されます。

block content 
    .page-header 
    h3 All Books 

    ul 
    for book in books 
     li= book.title 

すべての書籍に「好きな」ボタンが表示されるようになりました。どのようにして書籍のIDをf.eへの投稿要求で送ることができますか。 http://example.com/books/like

答えて

0

あなたは(あなたが使用しようとしているものは何でもボタンまたは)各DOM要素に書籍IDを関連付けることができます:

ul 
    for book in books 
    li(class='like-book', id=book.id) book.title 

そしてPOSTリクエストをトリガーするクリックハンドラをバインド(と仮定し、あなたのバックエンドが語りますJSON):

$('.like-book').on('click', function(evt) { 
    var data = JSON.stringify({ 
    id: evt.target.id, 
    // ... 
    }); 

    $.ajax({ 
    type: "POST", 
    url: "http://example.com/books/like", 
    data: data, 
    success: function(result) { /* */ }, 
    error: function(jqXHR, status, error) { /* */ }, 
    dataType: 'json' 
    }); 
}); 
関連する問題