gpt4 book ai didi

基于当前 Controller 的 JavaScript If/Else 语句

转载 作者:行者123 更新时间:2023-11-28 00:45:28 25 4
gpt4 key购买 nike

在我的 Rails 应用程序中,我想在“events” Controller 中执行某个 JS block ,并在“movie_interests” Controller 中执行另一个 block 。

我知道可以使用“params[:controller] == ...”检查此条件,但这是 ruby​​ 代码。我如何通过 JavaScript 文件完成此任务?

$(".search-results").on('click', ".movie-click", function(){
if (params[:controller] == "events") { //This is incorrect syntax, but shows more or less what I want to accomplish
$('#event_rt_id').val($(this).data("id"));
$('#movie-poster').html('<img id="selected-poster" src="' + $(this).data("poster") + '" />' );
}
});

最佳答案

一种可能的解决方案是在每个页面上包含唯一的 HTML 元素。例如,在 EventsController 呈现的页面上,您可以包含 <div class="events"> 。然后您的 JavaScript 代码就可以检查这些元素是否存在。

另一个选项是包含 Controller 名称,例如在 body 元素中。您可以在布局中执行此操作:

<body data-controller="<%= controller_name %>">

然后您可以在 JavaScript 中使用 Controller 名称。

不过我更喜欢第一个解决方案。

关于基于当前 Controller 的 JavaScript If/Else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27462148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com