Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.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
在Ruby中呈现普通JavaScript时出现问题_Javascript_Ruby On Rails_Rendering - Fatal编程技术网

在Ruby中呈现普通JavaScript时出现问题

在Ruby中呈现普通JavaScript时出现问题,javascript,ruby-on-rails,rendering,Javascript,Ruby On Rails,Rendering,在我的控制器中,我试图呈现普通JavaScript,但得到了意外的结果。这是密码 class UploadController < ApplicationController def index render :file => 'app\views\upload\uploadfile.rhtml' end def uploadFile render :js => "alert('Hello Rails');"

在我的控制器中,我试图呈现普通JavaScript,但得到了意外的结果。这是密码

class UploadController < ApplicationController

    def index

        render :file => 'app\views\upload\uploadfile.rhtml'

    end

    def uploadFile

        render :js => "alert('Hello Rails');"

       post = DataFile.save(params[:upload])

    end

end
class UploadController“app\views\upload\uploadfile.rhtml”
结束
def上传文件
render:js=>“警报('Hello Rails');”
post=DataFile.save(参数[:upload])
结束
结束

在执行post=DataFile.save(params[:upload])之前,我希望看到一个alertbox,但我看到了一个下载框。有什么问题吗?

render:js
将发送MIME类型为
text/javascript
浏览器会看到并尝试下载或显示它(我的浏览器Chromium将.js文件显示为纯文本)

render:js
实际上是要返回一些JavaScript,这些JavaScript将由该页面上已有的代码处理

本质上,您可以从jQuery进行AJAX调用:

$.ajax({
  type: "POST",
  url: "tokens/1/destroy.js",
  data: { _method: 'DELETE', cell: dsrc.id }
});
这是我的一个项目中的一些代码。这里没有定义数据类型,因此jQuery智能地“猜测”返回的数据类型。它看到它是MIME类型:
text/javascript
,并执行它。如果我们使用您的代码,将显示一个警报对话框

本质上,您需要已经加载了一个页面,并且该页面必须等待“香草JavaScript”返回


如果您只想为该特定操作执行一些代码,则只需在模板/视图中使用
javascript\u标记
将其包装,或包含一个外部.js文件。

您确定到达了正确的路径吗?你收到了什么样的错误?我没有收到任何错误,但是当我尝试渲染渲染时:js=>“alert('Hello Rails');“我从我的explorerRobbie收到下载框,谢谢,但是你能帮我处理这个代码(由我发送的)这是我对这个controllerFile Upload'uploadFile'上传的viwe,},:multipart=>true)%>选择文件:

AMIT,我建议查看一些RailsCast以处理javascript: