Javascript slim文件未在其中执行js

Javascript slim文件未在其中执行js,javascript,ruby-on-rails-3,parsing,jeditable,slim-lang,Javascript,Ruby On Rails 3,Parsing,Jeditable,Slim Lang,我在rails 3.2应用程序中使用gem“jeditable rails”进行就地编辑 在我的控制器中,我有 def update @article = Article.find(params[:id]) @article.update_attributes(params[:article]) render :layout => false if request.xhr? end 在我的文章/update.js.slim中 我有 - unless @article.errors.emp

我在rails 3.2应用程序中使用gem“jeditable rails”进行就地编辑 在我的控制器中,我有

def update
@article = Article.find(params[:id])
@article.update_attributes(params[:article])
render :layout => false if request.xhr?
end
在我的文章/update.js.slim中

我有

- unless @article.errors.empty?
  | $("#error_msg").html(@article.errors);
- else
  | $("#success_msg").html("updated successfully");
但是,当我进行更新时,它会更新并转到js文件,并按原样呈现它。 比如
$(“#error_msg”).html(@comment.errors)
是这样打印的或
$(“#success_msg”).html(“更新成功”)

编辑:

我正在使用jeditable插件对我的文章标题进行就地编辑。它会更新文章标题并按原样呈现js文件


我在这里得到的响应是json。如何解决这个问题。给出建议

使用
|
管道告诉Slim渲染引擎将内容输出为文本,因此您可以看到它将JavaScript代码打印为文本

在这种情况下,我认为您不想或不需要在这里使用Slim。使用雇员再培训局就可以了。尝试将
articles/update.js.slim
文件替换为
articles/update.js.erb
,替换为以下代码:

var valid = <%= @article.errors.empty? %>;

if (valid) {
  $("#success_msg").html("updated successfully");
}
else {
  $("#error_msg").html("<%= escape_javascript(@article.errors) %>");
}
var-valid=;
如果(有效){
$(“#success_msg”).html(“更新成功”);
}
否则{
$(“#error_msg”).html(“”);
}

使用
|
管道告诉Slim渲染引擎将内容输出为文本,因此您可以看到它将JavaScript代码打印为文本

在这种情况下,我认为您不想或不需要在这里使用Slim。使用雇员再培训局就可以了。尝试将
articles/update.js.slim
文件替换为
articles/update.js.erb
,替换为以下代码:

var valid = <%= @article.errors.empty? %>;

if (valid) {
  $("#success_msg").html("updated successfully");
}
else {
  $("#error_msg").html("<%= escape_javascript(@article.errors) %>");
}
var-valid=;
如果(有效){
$(“#success_msg”).html(“更新成功”);
}
否则{
$(“#error_msg”).html(“”);
}

我没有真正理解你的问题,但我会尝试猜测并建议你按照中的方式调试javascript。请更明确地描述你的问题,因为我不明白你的意思。我没有真正理解你的问题,但我会尝试猜测并建议您按照中的方式调试javascript。请更明确地描述您的问题,因为我不明白您的意思。我正在获得缺少的模板文章/更新,以及带有{:locale=>[:en],:formats=>[:json],:handlers=>[:erb,:builder,:slim,:coffee]}的应用程序/更新。错误我在我的视图/articles/Hm中添加了文件update.js.erb,您的初始文件的名称肯定是
article.js.slim
正确吗?我不确定它最初是如何为:json请求呈现该文件的。因为请求是:json格式的,我可以想象它需要一个
articles/update.json
template。我得到了缺少的模板文章/更新,应用程序/更新带有{:locale=>[:en],:formats=>[:json],:handlers=>[:erb,:builder,:slim,:coffee]}。错误我在我的视图/articles/Hm中添加了文件update.js.erb,您的初始文件的名称肯定是
article.js.slim
正确吗?我不确定它最初是如何为:json请求呈现该文件的。因为请求是:json格式的,所以我认为它需要一个
articles/update.json
模板。