所以我有一个简单的ajax调用一个页面:
= link_to 'click me', my_path, :onclick => "if ($('#go').val() == "ok") { alert('going'); } else { return false; }", :remote => true do
这工作得很好,我看到警报只有当我的字段id "go"有ok在那里…但问题是,无论何时,远程操作都会触发。
如果这不是一个远程链接,它将工作得很好,不通过链接,但它似乎与:remote => true ?
的行为方式不同。我怎样才能达到预期的结果?
谢谢,亚历克斯
这里的问题是Rails UJS驱动程序将看到data-remote
,然后执行动作,因为在rails.js
中有这样的函数,所以也许可以尝试设置JS内部链接的属性并删除:remote => true
。这可能会起作用,但我不知道rails.js
是否会正确绑定。
另外,考虑把这个JS放在application.js
一旦你完成调试,这样你就不会有内联JS在你的控制器。