【发布时间】:2018-04-26 22:15:14
【问题描述】:
我正在开发我的第一个 Rails 应用程序,并尝试通过单击页面中的另一个链接在我的视图中显示/隐藏特定的 Web 元素。以下是我的看法,
%p
= link_to 'Show additional details', "#", id: "secondary-link"
%table{:id => "secondary"}
%tr
%th Key
%th Value
其中“辅助链接”是显示/隐藏我的表格的链接。当页面首先加载时,表格被我的 application.css.scss 中的以下行隐藏
#secondary{
display: none;
}
另外,我在我的 assets/javascripts/application.coffee 中添加了以下脚本
@myFunction = (variable) ->
$(document).on "page:change", ->
$('#secondary-link').click ->
$('#secondary').toggle()
但是,当我单击页面中的链接时,该表格未显示。但是,在我的控制台中,如果我输入“myFunction”,我将获得该功能
ƒ (variable) {
return $(document).on("page:change", function() {
return $('#secondary-link').click(function() {
return $('#secondary').toggle();
});
});
}
当我输入 myFunction() 时出现错误
Uncaught TypeError: Cannot read property 'on' of undefined
at myFunction (application.self-4e74630fd8894bca1e22a8d66c1d7ebfaa39edf4f40e058aae03fc788a9f6d94.js?body=1:3)
at <anonymous>:1:1
感谢您的帮助。
【问题讨论】:
-
你是怎么打电话给
myFunction的?你把它放在哪里了? -
在我的浏览器控制台中,我输入了“myFunction”并且可以看到它正在加载。此外,如果我单击链接“显示其他详细信息”,该链接应该切换另一个元素的可见性,页面将加载“#”端点。
-
你必须打电话给
myFunction()(带括号) -
哎呀。 when i call that myFunction(), i am getting an error "application.self-47d2b709084c7a2d291f788c1a659efac20243f96e18a63b3b4b42285b64978c.js?body=1:3 Uncaught TypeError: Cannot read property 'on' of undefined at myFunction (application.self-47d2b709084c7a2d291f788c1a659efac20243f96e18a63b3b4b42285b64978c.js?body =1:3) 在 :1:1"
-
Cannot read property 'on' of undefined - 你在使用 jQuery 吗?您可能忘记包含依赖项
标签: ruby-on-rails coffeescript ruby-on-rails-5