Ajax / JS - 未添加到数据库中

时间:2016-07-22 21:45:33

标签: jquery ajax ruby-on-rails-4

我的Rails 4应用程序中有一个Ajax请求,但是一旦单击该按钮,它就不会将数据添加到数据库中。我错过了什么?页面被缓存,所以我不能简单地添加link_to或button_to。提前谢谢。

JS文件:

$(document).ready(function() {

 $(".listcollect").on("click", function(event) {
    event.preventDefault();
    var listID = this.id;
    $.ajax({
        method: "GET",
        url: "/listing_collections/:id/listcollect",
        success: function(result) {
            var arrLen = result.length

            for (var i = 0; i < arrLen; i++) {
                var $li = $("<li></li>");
                var $a = $('<a class="listing-collection-item"></a>');
                $a.attr("href", "/listings/" + listID + "/add_to_collection?listing=" + listID + "$amp;listing_collection_id=" + result[i]["id"] + "&amp;listing_id=" + listID)
                $a.text(result[i]["name"])
                $li.append($a)
                $(this).next().append($li)
            }
        }.bind(this)
    })
});

$("ul.dropdown-menu").on("click", ".listing-collection-item", function(e) {
    var url = $(this).attr("href");
    alert("The listing was added to the collection!");

    return false;
   });
});

我的html.erb文件:

<div class="btn-group listcollect-wrapper">
    <button class="listcollect button btn-blue-white btn-2x dropdown-toggle" data-toggle='dropdown' type="button" id=<%= listing.id %>>Add to Listing Collection <span class="caret"></span></button>
    <ul class='dropdown-menu'>

    </ul>
</div>

1 个答案:

答案 0 :(得分:1)

据我所知,您不会向脚本发送任何数据。

您需要添加某种data来发送。

示例

$.ajax({
  method: "GET",
  url: YOUR_URL,
  data: {
    data1: "value" 
  },
  success: function(){},
  ...
});

有关其他详细信息,请参阅此答案。 https://stackoverflow.com/a/22179776/2370075