做远程=>使用javascript进行真正的通话

时间:2013-01-24 06:41:07

标签: javascript ajax ruby-on-rails-3 rjs ujs

有没有办法与link_to ... remote=> true使用javascript具有相同的行为?

也许没有必要 -

我有一个div,其中包含用户的姓名和图片。

我想让整个div对点击做出反应并转到方法(例如users#show),就好像它是一个link_to。

link_to的问题在于它创建a href,使文本可链接等。

另外,我似乎无法用它来使整个div可点击,只有文字。

试图更多地解释自己 -

如果link_to与javascript中的window.location相对应

javascript中link_to的{​​{1}}是什么?

3 个答案:

答案 0 :(得分:2)

您就是这样做的:

$.rails.handleRemote($('<a>', { href: '/path', 'data-method': 'GET' }));

答案 1 :(得分:0)

我并不完全熟悉Rails,但在阅读了该方法的描述之后,听起来好像只是在做一个ajax调用。很有趣的是Rails抽象了这个概念。

如果您正在使用像jQuery这样的库,那么在点击时进行ajax调用非常简单:

$('element').click(function(e){
  $.get('url', function action(){
    // Do stuff
  });
});

答案 2 :(得分:0)

要让DIV与remote =&gt;一起使用,在仔细检查jquery-ujs之后,看起来你可以将你想要点击的DIV包裹在一个FORM中,如下所示:

<form action="/users" method="POST" data-remote="true">
   <div onclick="$(this.parentNode).trigger('submit.rails');">Remote Request</div>
    <input type="submit" style="display:none" />
</form>