2011-07-15 108 views
0

我正在使用RoR的link_to。我希望同时发送一个:remote => true link_to,它将在页面上执行一个动作而不刷新,并且我想在一个新的浏览器窗口中打开一个新页面(:target =>“_ blank”)。link_to点击多个链接

如何在一次点击中同时执行这两项操作?

谢谢!

回答

3

假设你有一个链接:

<%= link_to "My Link", "/path/for/my/link", :remote => true, :id => "mylink" %> 

如果你想打开新的页面执行动作后,那么你可以把它放在你的行动的myaction.js.erb文件:

window.open("/url_to_open"); 

但是,如果您希望在您单击链接时立即打开新窗口,则可以添加此JavaScript以在远程调用发送到服务器之前拦截远程调用(假设您使用的是jQuery):

$("#mylink").bind("ajax:beforeSubmit", function(){ 
    window.open("/url_to_open"); 
});