Javascript Rails在同一页面中提交后显示信息

Javascript Rails在同一页面中提交后显示信息,javascript,ruby-on-rails,ruby,ajax,forms,Javascript,Ruby On Rails,Ruby,Ajax,Forms,我想在表单提交中单击后显示一些值,但在同一页面中,不刷新 以我的形式 (:controller=>“reports”,:action=>“search”)的url\u, :method=>“get”,:remote=>true,:format=>:js, html:{id:“日期范围”,:“数据类型”=>“json”}do | f |%> “Fecha Inicio”%> “Fecha最终版”%> “btn btn成功btn lg”%> “报告/共享/销售截止日期”%> 在我的sale_by_

我想在表单提交中单击后显示一些值,但在同一页面中,不刷新

以我的形式

(:controller=>“reports”,:action=>“search”)的
url\u,
:method=>“get”,:remote=>true,:format=>:js,
html:{id:“日期范围”,:“数据类型”=>“json”}do | f |%>
“Fecha Inicio”%>
“Fecha最终版”%>
“btn btn成功btn lg”%>
“报告/共享/销售截止日期”%>
在我的sale_by_date.html.erb中


0 ? “帕加多”:“{number_to_currency sale.剩余_balance}”%>
| 
create.js.erb

$('.datos').html(“'reports/shared/_sale_by_date.html.erb')%”);
在我的控制器里

def搜索
开始日期=参数[:搜索][:开始日期]
结束日期=参数[:搜索][:结束日期]
@销售=销售。其中(:创建日期=>开始日期..结束日期)
回应待办事项|格式|
format.js{ajax_refresh}
结束
结束
def ajax_刷新
返回render(:file=>reports/create.js.erb)
结束
但当我点击提交表单时,什么也没发生

控制台信息

Started GET”/reports/search?utf8=%E2%9C%93&search%5b开始日期%5D=01%2F01%2F2015&search%5b结束日期%5D=06%2F03%2F2015&commit=Buscar“for::1于2015-06-03 10:00:44-0500
开始获取“/报告/搜索?utf8=%E2%9C%93&搜索%5b开始日期%5D=01%2F01%2F2015&搜索%5b结束日期%5D=06%2F03%2F2015&提交=Buscar”for::1于2015-06-03 10:00:44-0500
由ReportsController处理#搜索为JSON
由ReportsController处理#搜索为JSON
参数:{“utf8”=>“✓", "搜索“=>”{“开始日期”=>“2015年1月1日”,“结束日期”=>“2015年3月6日”},“提交”=>“客车”}
参数:{“utf8”=>“✓", "搜索“=>”{“开始日期”=>“2015年1月1日”,“结束日期”=>“2015年3月6日”},“提交”=>“客车”}
[查询值]
提交报告/共享/_sale_by_date.html.erb(65.5ms)
提交报告/共享/_sale_by_date.html.erb(65.5ms)
呈现报告/create.js.erb(67.5ms)
呈现报告/create.js.erb(67.5ms)
在80毫秒内完成200 OK(视图:56.8毫秒|活动记录:16.0毫秒)
在80毫秒内完成200 OK(视图:56.8毫秒|活动记录:16.0毫秒)

这是我第一次问,谢谢

当您发送AJAX请求时,Ruby将自动查找同名的
.js.erb
。因此,您可以将
create.js.erb
重命名为
search.js.erb
并删除
respond\u to
块。此外,
:“data type”=>“json”
可能会导致响应被解释为json而不是JS,因此它不会被执行。

根据服务器日志,尽管出现两次的内容都有点奇怪,但似乎一切都正常工作。能否添加一个
console.log(“测试”)
警报(“测试”)
到您的
create.js.erb
并查看它是否运行?是否检查了JavaScript错误?否则一切看起来都正常。
渲染报告/create.js.erb(67.5ms)
确定什么都没发生吗?看起来您希望
create.js.erb
@Clark添加
警报(“测试”)中
渲染部分
而不是
渲染文件
控制台日志(“测试”)仍然什么都不做。这表明您的
create.js.erb
没有被执行。我的第一个想法是,为什么ReportsController将
处理为JSON
搜索为JSON
特别是
作为JSON
与我在应用程序中提出的类似想法相比,它总是
作为JS
我的建议是将
create.JS.erb
重命名为
search.JS.erb
,并从
搜索