我最初尝试使用 $.ajax 来执行此操作,但没有成功。.load 对我很好,所以我使用了它。但是,现在我发现自己需要一些 $.ajax 附带的回调。
jQuery ->
fl = $("#flight_flightlesson_id")
fl.on "change", ->
$("#gradable_items_container").load("gradable_items_inputs?lesson=#{fl.val()} #ajax_gradable_items_for_lesson_content")
When the chosen lesson input changes this passes the lesson_id as a url param to the flights_controller action gradable_items_inputs, populates a template of the same name, and loads that content into the browser without a reload. 效果很好。
但是,我想使用这些回调
beforeSend: ->
$("#ajax_tell").addClass "is-fetching"
//success: (response) ->
// $("#gradable_items_container").html(response)
complete: (response) ->
$("#ajax_tell").removeClass "is-fetching"
alert "complete"
error: ->
$("#{ajax_tell}").html "<p>ERROR</p>"
alert "error"
我如何将现有的 .load 转换为此 $.ajax?