此代碼正在工作,但必須有更好的方式在Jquery腳本中執行此操作。使用單選按鈕顯示/隱藏表單元素時編輯表單的顯示/隱藏持久性
這裏是我的單選按鈕
<%= f.radio_button :losstype, "Cash", :id => 'lc' %>Cash
<%= f.radio_button :losstype, "Asset",:id => 'rb' %>Asset
<%= f.radio_button :losstype, "Supplies", :id => 'ab' %>Supplies
而且我的繼承人隱藏位現在。
<% if @assetloss.losstype == "Asset" %>
<div id="asset_list" style="display: show;">
<% else %>
<div id="asset_list" style="display: none;">
<% end >
A drop down list to be shown
</div>
而且Jquery的一部分
$j(document).ready(function(){
$j("input[id='lc']").change(function() {
$j("#asset_list").hide();
});
$j("input[id='rb']").change(function() {
$j("#asset_list").show("slide");
});
$j("input[id='ab']").change(function() {
$j("#asset_list").hide();
});
});
呈現標記上選中了單選按鈕
<input checked="checked" id="rb" name="asset_loss[loss_type]" type="radio" value="Asset"/>
雖然它的作品,我敢肯定有一個更好的方式來做到這一點,所以我我想要重構幫助。
很多在此先謝謝
Ed1。我已經意識到這是一個JQuery的問題,並需要它來檢查,如果「input [id ='rb']」被檢查(從數據庫),然後$ j(「#asset_list」)。不需要更換聽衆
請發佈呈現的標記而不是服務器端代碼。 – undefined