0

我将 ddslick jquery 下拉插件与我的 Rails 应用程序结合使用。

在view1中,我有

$('#challenges_dropdown').ddslick({
  <snipped>
  onSelected: function (data) {
    $.ajax({
      url: "/load_data",
      type: "GET",
      data: {"id": data.selectedData.value}
    });
  }
});

即,我向我的控制器调用 load_data。控制器正确接收到这个,然后在最后,调用渲染一个单独的视图

render "data.js"

这是一个 .js 视图,它执行一个脚本来更新我原始视图的一些元素。出于某种原因,这个脚本片段只是没有运行。

我很困惑。当我使用带有 data-remote="true" 的常规链接时,整个过程完美运行。但是,当我进行 AJAX 调用时,它会失败。

4

1 回答 1

1

基本上,我需要为 AJAX 调用指定一个数据类型,以便将来自 AJAX 调用的响应视为脚本并执行:

$('#challenges_dropdown').ddslick({
  <snipped>
  onSelected: function (data) {
    $.ajax({
      url: "/load_data",
      type: "GET",
      dataType: "script",
      data: {"id": data.selectedData.value}
    });
  }
});
于 2012-12-19T23:16:51.040 回答