Ajax在Select_tag上发出请求

时间:2012-11-29 01:15:59

标签: jquery ruby-on-rails ajax spree

我的View中有一个DropDown菜单,它有一个Callback,一旦检测到change事件就会被触发。我想通过ajax将在DropDown中选择的Value传递给我的Line_items控制器并更新特定记录。
可悲的是,$ .ajax对我来说仍然是一个陌生人。

到目前为止,我有:

$.ajax(
      type: 'POST',
      dataType: 'text'
      url: 'orders/:order_id/line_items/:id',
      data:
        "variant_id": selectedData.selectedData.value

      success: ->
        alert ('test')
    )

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

基本上你可以将数据中的值传递为json对象;你的功能可能如下:

$('#my_dropdown_id').change(function() {
  var sel_value = $(this).val();
  // here you can do some validation, etc; before fire the ajax call if is necessary
  $.ajax({
     url: 'orders/:order_id/line_items/:id',
     type: 'POST',
     data: {variant_id: sel_value},
     success: function(data) {
       alert('OK!')
     }
  })
});

然后在你的后端你可以从post params获得该值。即params ['variant_id']

我假设您将使用适当的ID值构建URL;即。

url: 'orders/'+ your_order_id +'/line_items/'+ line_item_id,