我在一个HTML表格里有一条链接,点击后调用这个Rails控制器函数:
控制器:
def match
render :partial => 'myview/match.js.erb'
end
上述控制器调用此js部分:
_match.js.erb
(注:该部分为代码或标签内容,不做翻译修改。)
$('#match_' + <%=@debit.id%>).hide().after('<%= j render("match") %>');
上面的js部分调用下面的
erb
代码:
_match.html.erb
<%= form_for(@debit, remote: true, html: { id: 'match_form' }) do |f| %>
<%= f.text_field :match_id, style: "width:82px" %>
<br/><br/>
<%= button_tag 'Save', class: 'btn btn-primary', id: 'match_submit', style: "width:38px;padding:0px" %>
<%= button_tag 'Cancel', class: 'btn btn-secondary', id: 'match_cancel', style: "width:52px;padding:0px" %>
<% end %>
如上所示,局部显示了一个带有两个按钮“保存”和“取消”的文本框。
现在,当用户输入值并单击“保存”时,我希望进行一些小的验证。
1. 如果验证成功,则希望完成“保存”操作(这意味着文本框和“保存”和“取消”按钮将消失,并且原始HTML链接将重新出现,并在文本字段中输入新值[现在如果单击具有新数字的此链接,则带有“保存”和“取消”按钮的文本字段将重新出现],即允许控制器函数
def match
完成)。2. 如果验证失败,则希望显示一个弹出窗口,其中包含警告信息,例如“您确定要继续使用此值吗?”以及2个按钮“Yes”和“No”。
a) 如果用户单击“是”,则希望发生与情况1相同的事情。 b) 如果用户单击“否”,则文本字段应保持未关闭状态,同时保留“保存”和“取消”按钮。
如何实现这一点?什么是最简单的方法?