Rails:respond_to js 不使用文本呈现是一个字符串

Posted

技术标签:

【中文标题】Rails:respond_to js 不使用文本呈现是一个字符串【英文标题】:Rails: respond_to js do not render with text is a String 【发布时间】:2017-06-28 08:17:33 【问题描述】:

我有一个响应格式 js 的代码

        app = CheckAppExist.new(params[:url])
        if(app.exist?) 
            cookies[:package_name] = app.package_name
            cookies[:app_url] = app.app_url
            respond_to do |format|
                format.html 
            format.json 
            format.js  render :text => "200" 
          end
        else
            respond_to do |format|
                format.html 
            format.json 
            format.js  render :text => "Url or Package Name is wrong ", status: :unprocessable_entity 
          end
        end

上面的代码是有效的,但是当我改变响应文本时

format.js render :text => "200" format.js render :text => "some text here"

它不起作用。我使用 rails ujs 发送和接收请求。

当文本是字符串数字(“200”)时,运行方法.on("ajax:success",...),当文本渲染为字符串时,运行方法.on("ajax:error",...)

我不明白上述错误,任何人都可以帮助我。 谢了。

【问题讨论】:

请详细说明“它不起作用”是什么意思。抛出的具体错误是什么? 【参考方案1】:

试试这个:

render inline: 'your text' 

【讨论】:

以上是关于Rails:respond_to js 不使用文本呈现是一个字符串的主要内容,如果未能解决你的问题,请参考以下文章