Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 浏览器如何在rails中执行AJAX响应?_Javascript_Jquery_Ruby On Rails_Ruby_Ajax - Fatal编程技术网

Javascript 浏览器如何在rails中执行AJAX响应?

Javascript 浏览器如何在rails中执行AJAX响应?,javascript,jquery,ruby-on-rails,ruby,ajax,Javascript,Jquery,Ruby On Rails,Ruby,Ajax,当我们: 使用remote:true 将javascript代码放入与请求对应的.js.erb文件中 然后在响应上执行js.erb文件中的代码。 我很好奇这些代码是如何在浏览器中执行的 它是通过rails库中的某种eval调用实现的,还是与响应中设置为text/javascript的Content-Type头相关?rails生成负责发送调用的javascript代码,它是默认添加到布局中的jquery\u-js.js文件。然后,它简单地使用data remote=true属性转换所有调用-它阻止

当我们:

  • 使用
    remote:true
  • 将javascript代码放入与请求对应的
    .js.erb
    文件中
  • 然后在响应上执行
    js.erb
    文件中的代码。 我很好奇这些代码是如何在浏览器中执行的


    它是通过rails库中的某种
    eval
    调用实现的,还是与响应中设置为
    text/javascript
    Content-Type
    头相关?

    rails生成负责发送调用的javascript代码,它是默认添加到布局中的
    jquery\u-js.js
    文件。然后,它简单地使用
    data remote=true
    属性转换所有调用-它阻止默认表单提交,并对执行时指定的
    href

    进行ajax调用,因为ajax请求的
    数据类型
    设置为
    脚本

    $.ajax({
      url: url,
      dataType: "script",
      success: success
    });