2016-05-11 27 views
0

我想根據事件顯示不同的確認對話框。我有兩個單選按鈕,true或false。和目前我有代碼,我的看法是這樣的:在提交時更改確認對話框

<%= form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put }) do |f| %> 
<table> 
<tr> 
    <td>User Fee?</td> 
    <td> 
    <%= radio_button("user", "need_subscription", "true", class: "subscription_button") %> 
    <%= radio_button("user", "need_subscription", "false", class: "cancel_subscription_button") %> 
    </td> 
    </tr> 
</table> 
<%= f.submit "Save", data: { confirm: 'foo?' } %> 
<% end %> 

目前我顯示確認對話foo無論我選擇,並提交其單選按鈕。如何在3種不同的條件下設置不同的消息,如下所示:

1)當我的默認單選按鈕爲true時,我設置爲false。顯示foo

2)當我的默認單選按鈕是假的,我設置爲true。顯示bar

3)當我的默認單選按鈕與我提交的值相同時。不要顯示確認對話。

感謝您的幫助!

回答

0

嘗試做它通過jQuery的

var confirm = ($("#"+radio_name).val() == "true") 
    ? "foo" 
    : "bar"; 

$(".submit_button_class").data("confirm", confirm); 
+0

謝謝您的回答,但是這並不能滿足我的第三個條件。任何想法如果默認值沒有改變,我怎麼能不返回? – pyfl88