如何使用link_to
帮助器创建没有href
属性的链接?我想专门为 javascript 操作创建一个链接,我不希望它重新加载页面或任何东西。
当我省略 url 参数时,单击链接会重新加载页面。同上提供nil
代替 url。
如何使用link_to
帮助器创建没有href
属性的链接?我想专门为 javascript 操作创建一个链接,我不希望它重新加载页面或任何东西。
当我省略 url 参数时,单击链接会重新加载页面。同上提供nil
代替 url。
您还可以使用一个
content_tag("a","link text")
这给了你
<a>link text</a>
或者,来自@cesartalves 的评论,带有一个块:
content_tag("a") do
image_tag("src")
end
参见:rails api
我使用这种方法:
= link_to('Click me', 'javascript:;', :id => :foo)
它基本上是一个Javascriptno-op
将href设置为:
javascript:void(0)
这将使您有一个链接,单击它不会执行任何操作,不会重新加载页面,也不会将页面移动到顶部。
另一种选择是
= link_to("My hyperlink", "#")
这将为您提供一个链接,单击该链接时不会像传入 nil 一样重新加载页面。同时,它会将鼠标设置为鼠标悬停时的指针,而 content_tag 方法无法做到这一点。
我认为你最好在没有href的情况下使用按钮。
<button class='button'>Hello</button>
<%= link_to '+ Add Make', 'javascript:void(0)', id: 'add-make', onclick: 'addMake()' %>
然后是你的 jQuery:
function addMake() {
$.ajax({
url: '/dealers',
type: 'GET',
dataType: 'script',
success: function (data) {
console.log('it was successful')
$('.add-make').hide();
},
error: function (data) {
console.log('it was error')
}
});
}
href
在这种情况下,我更喜欢使用没有属性的纯 HTML :
<a data-toggle="modal" data-target="#myModal">Open dialog</a>
恕我直言,它比content_tag("a","link text")
.
href=#
是浏览器默认点击时会滚动到顶部javascript:;
看起来很丑