Re: [問題] 不知道層數的下拉選單

看板Ajax作者 (米沙)時間15年前 (2010/10/11 13:39), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串3/4 (看更多)
有點醜,加減看 (function($) { $.fn.test = function(options) { options = $.extend({ post: "json.php", parent: '' }, options); var element = $(this); $('select[id^="sel"]').live('change',function(){ select_id(this.value,this.id); }) function select_id(id,parent){ var parent = parent.replace('sel_',''); if($('select[id^="sel_'+parent+'_"]').size() > 0){ $('select[id^="sel_'+parent+'_"]').remove() } $.post(options.post , {'id':id}, function(data){ var list = $.parseJSON(data); var option=''; $.each(list, function(key,val){ option += '<option value="'+key+'" >'+val+'</option>'; }); var sel = '<select id="sel_'+parent+'_'+id+'"><option value="">未選擇 </option>'+option+'</select>'; element.html( element.html() + sel); }); } } })(jQuery); <script type="text/javascript"> $(document).ready(function(){ $("#select").test({parent:$('#sel')}); }) </script> <body> <select id="sel_parent"><option value="">未選擇</option> <option value="A">A</option> <option value="B">B</option> <option value="C">C</option> </select><div id="select"></div> </body> 說明一下 父層的id是 sel_parent 子層的id是 sel_parent_A sel_parent_B A子層的id是 sel_parent_A_A1 sel_parent_A_A2 當任何父層變動的時候,移除掉其他子層 $('select[id^="sel_'+parent+'_"]').remove() -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.105.244.175

10/11 13:39, , 1F
版上的大大應該有更好的解法
10/11 13:39, 1F

10/11 13:45, , 2F
找看看有沒有人家寫好的jQuery Plugin
10/11 13:45, 2F
※ 編輯: mesak 來自: 112.105.244.175 (10/11 13:52)
文章代碼(AID): #1CigC818 (Ajax)
文章代碼(AID): #1CigC818 (Ajax)