这个问题很难解释,请耐心等待。我有一个表,其中包含保存“记录”表中的记录的行。我可以使用ajax在此表中添加行,并且当我在行中的文本字段中输入小时数并单击以离开时,记录将通过ajax提交。
我的问题是我在每行旁边都有一个删除按钮。当我刷新页面或加载页面时“记录”表中已存在的行时,这些行将按您的期望删除。但是,如果我刚刚添加了几个小时并且没有刷新页面,则无法删除该记录。
在搜索ive后,将其缩小为:
已经存在的记录:
<a rel="nofollow" data-method="delete" data-confirm="Are you sure?" href="/records/2">
刚刚添加:
<a class="delete" title="delete row" rel="nofollow" data-remote="true" data-method="delete" data-confirm="Are you sure?" href="Delete">
因为我使用了Records控制器中的ruby方法“ delete”,所以它需要带有记录ID的href,即“ records / 2”。在我刷新页面不是我想要的之前,这不会改变。
我已经考虑过在提交记录时设置按钮的href,但是我知道如何在js或ruby中做到这一点,加上ID必须提交,然后再次获取记录ID。或者,如果有人可以提出一个除上述建议之外的更好的主意并“在提交时刷新页面”。
最佳答案
我猜你正在使用rails,所以你需要做的是控制器应该返回一个js响应。检查此question。要在JavaScript中呈现erb代码,您应该使用escape_javascript。
关于javascript - 在Ruby/Javascript中设置按钮的href,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7580628/