实验上我已经了解到以下代码:

        <td><%= link_to 'Notify', '/w/'+w.id+'/notify', method: :get, :class => "btn btn-success notify-btn" %></td>

无论这个jQuery如何都会触发:

  $('.notify-btn').click(function(e){
    e.preventDefault();
    bootbox.confirm("Alert?", function(result){
      if(result === true){
        return true;
      } else {
        return false;
      }
    });
  });

这是由于方法:: get。 我逐个删除了链接的元素并尝试了各种组合。 如果方法:: get就在那里,它就会触发。

我可以阻止它e.stopPropagation,但那么它不会跟随链接 即使我单击“确定”,它也只是在页面上无所事事。

如果我摆脱erb并使用直接HTML,如下所示:

<a href="/w/53531e8a963e6503c60002b2/notify" class="btn btn-success notify-btn" data-method="get">Notify</a>

而data-method =“get”就在那里,结果相同。 如果我删除数据方法,它将弹出警报并阻止跟踪链接,但即使我确认,它也不会实际触发链接。

关于我做错了什么的任何想法?

===============>>#1 票数:9

  $('.notify-btn').click(function(e){
    e.preventDefault();
    e.stopPropagation();
    var link = $(this).attr('href')
    bootbox.confirm("Alert?", function(result){
      if(result){
        window.location = link;
        return true;
      } else {
        return false;
      }
    });
  });

我不得不使用一些技巧 - 但上面的工作。

奇怪的是,它最终需要preventDefault和stopPropagation。 我尝试了所有可能的组合。

===============>>#2 票数:1

当尝试控制是否应该执行link_to请求时,我也遇到了同样的问题,并且基于某些条件并且最终执行了以下操作

  1. 使用方法get或post创建隐藏的 link_to按钮
  2. 创建一个可见的link_to按钮
  3. 如果条件为真,则单击可见的link_to按钮时,将触发隐藏的link_to按钮
  4. 如果条件为false,则单击可见的link_to按钮时,只返回false将执行该作业

例如,假设类.link-to和.link-to-with-method

 $('.link-to').click(function(){ if(condition){ $('.link-to-get-method').trigger('click'); return true; }else{ return false; } }); 

  ask by notaceo translate from so

未解决问题?本站智能推荐:

1回复

在方法link_to上的ajax请求:在禁用javascript的情况下放入rails

我有一个链接,它使用put方法发送投票上的ajax请求。启用了javascript后,它可以正常工作。因此,当我禁用javascript时,它发送了一个get请求。我什至尝试在link_to中使用方法post来不走运。任何帮助将不胜感激.. 路线 视图 控制者 更新
2回复

Rails,AJAX:根据先前单击的链接呈现新的link_to

所以我只是想做一些简单的事情,但似乎无法在我的书中找到任何解决方案,也无法轻松地对其进行搜索。 而我的create.js.erb是: 所以我知道这段代码显然是错误的,请在这里告诉我我在做什么错,我想给用户一个订阅的选项,如果他不是的话,反之亦然。 我是否需要将link_to
1回复

link_to弹出模式div在rails中不起作用

我正在制作一个Rails应用程序,每当我单击link_to'Add new Progress'时,我都想在其中显示一个模式弹出div,我试图这样做但效果不佳。 JavaScript没有给出错误,我不知道该怎么办。 请帮助任何人 我的代码=查看文件 我的代码= JavaScrip
1回复

提交后在Rails中禁用link_to按钮,以防止重复提交

在我的Rails应用程序中,当尝试关闭对象(在这种情况下为调用)时,会弹出一个模式。 用标准的Rails link_to弹出模态,如下所示: 在表单对象中,我可以禁用“提交”按钮,但可以设置disable_with的data属性,但是我不确定link_to帮助器中是否提供此选项。
1回复

.js.erb文件中的link_to

出于某种原因,当我在show.js.erb文件中使用link_to时,javascript无效... 这有效: 这不是: 出了什么问题? 谢谢。
1回复

单击链接Rails时使用JQuery呈现表单

我正在尝试让Jquery在单击链接时呈现表单。 这是单击的链接。 我这里有一个渲染表单的类。 我想更改它,使其仅在单击按钮后才显示。 javascript:现在,我可以更改div类中的文本,但是我不确定如何将渲染表单放入javascript中。 如果有人能指出我正
2回复

Rails JQuery发送GET而不是POST请求

我一直困扰着Rails问题几天,却找不到解决方案。 我的代码曾经可以工作,但是对javascript进行了一些重大更改(必填),因此不再起作用。 我的用户可以参加活动并退出活动。 这需要用户单击按钮,然后发送发布请求,但是由于某种原因,该请求被作为Get请求处理,并且失败,因为没有用于
2回复

Rails jQuery被两次调用

我正在使用Rails 3.2应用程序,但是不知何故我的javascript代码被执行了两次,我不确定为什么。 我已经搜索了application.js文件,它仅包含在我的资产文件夹中,而不包含在公用文件夹中。 每个js文件也只有一个副本,因此它可能不应归因于资产管道。 这是我的ap
1回复

使用Rails从numberfield进行jQuery ajax调用不起作用

对于我的应用程序,我有fixeddeposits,我们可以在其中创建新的fixeddeposits。 现在,我想根据我在存款期(number_field)中输入的数字(365/730/1095/1460&1825)更新利率字段,我必须检查客户年龄。 我已经在fixeddeposits_c
1回复

Rails 3如果使用jQuery声明?

我有一个使用此railscast设置的多步Rails 3表单: http: //railscasts.com/episodes/217-multistep-forms,并且我使用了另一个Railscast为我的应用程序实现Stripe付款: http:// railscasts.com/epis