3
有很好的響應a related question,但這種方法和我的實際實施需要不同的策略。篩選出基於無線電數據的選擇選項
請觀看演示示例中,我已經爲我的家庭作業完成: http://jsfiddle.net/k8fNb/
我有兩個家的作品:
- 使基於數據過濾器隱藏和可見選擇選項:TODO
- 根據電臺值選擇選項:完成
當您單擊收音機時,選擇值應該與無線電值(#2)相同,並且完成,但是這也應該過濾基於無線電的數據過濾器的選擇選項的可見性。數據過濾器["a","b","c"]
在#filters
應使選項值a,b,c可見,並隱藏其餘部分。我的問題是如何處理#1。
HTML:
<div id="filters">
<input type="radio" name="filter" value="a" data-filter="["a","b","c"]"/><label>a </label>
<input type="radio" name="filter" value="b" data-filter="["a","b","c"]"/><label>b </label>
<input type="radio" name="filter" value="c" data-filter="["a","b","c"]"/><label>c </label>
<input type="radio" name="filter" value="1" data-filter="["1","2","3"]"/><label>1 </label>
<input type="radio" name="filter" value="2" data-filter="["1","2","3"]"/><label>2 </label>
<input type="radio" name="filter" value="3" data-filter="["1","2","3"]"/><label>3 </label>
</div>
<select id="options">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
的jQuery:
$(document).ready(function(){
$('#filters input').each(function() {
var v = $(this).val();
$(this).click(function() {
$('#options option').filter(function(){
// 1. Make select options hidden or visible based on data-filter.
// ? TODO ....
// 2. FIXED. Change select value to use radio value
return $(this).val() == v;
}).prop("selected", true);
});
});
});
任何幫助深表感謝。
非常感謝。這比我想象的更復雜,但最後一個選項給了我很多自由的服務器端。對此,我真的非常感激。 – swan