我正在将现有应用程序移植到 Rails,该应用程序广泛使用程式化的 anchor 来提交表单:
<a class="lozenge-button h25 blue" href="#">
<span class="left"></span>
<span class="center">Send</span>
<span class="right"></span>
</a>
但是在 Rails 中,这些 anchor 不适用于 Ajax 表单提交,因为 Rails 的 UJS 似乎需要输入标签而不是 anchor (即 submit_tag("Submit", remote: true)
).
有没有办法让我的 anchor 触发 Ajax 表单提交?我设法让 anchor 提交以下表单:
$('#my_anchor').click(function() { $(this).closest('form').submit();});
...但它绕过 Ajax 并执行重新加载页面的正常表单提交。
最佳答案
我最终以与 this question 非常相似的方式解决了它:
<%= f.submit id: 'hidden_submit_button', style: 'display: none;' %>
<a class="lozenge-button h25 blue" href="#" onclick="$('#hidden_submit_button').click(); return false;">
<span class="left"></span>
<span class="center">Send</span>
<span class="right"></span>
</a>
关于ruby - 导轨 : submit Ajax form via anchor click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10970160/