我有以下链接
<%= link_to "Comment", new_blog_post_comment_path(@blog_post, format: :js),
remote: true, id: 'new_comment_link', class: 'btn' %>
按下后,我的浏览器会显示new.js文本(浏览器会显示地址/blog_posts/X/comments/new.js
),而不是执行new.js。
我已经读过它可能是由JS引起的,但即使new.js为空,或只包含alert('lol');
,也会发生这种情况,所以我很确定它不是JS错误。
此外,当我使用chrome的开发工具时,我看到GET请求已在new.js
页面上发送,并且响应符合我的预期。
这让我觉得我的问题是除了按照我的意愿发送GET之外,链接还会将我重定向到new.js的地址。
这是原始的new.js代码,但我认为不重要
$("<%= escape_javascript(render(:file => 'comments/new.html.erb')) %>")
.insertAfter('#blog_post'); // Insert the comment form before the first comment
$('#new_comment').slideDown();
$('#new_comment_link').hide();
感谢您的帮助