2012-03-30 239 views
0

我有以下代碼可用於單選按鈕,但需要更改爲使選擇框進行更改而不是單選按鈕,這可能嗎?更改從jquery中以前的下拉列表中選擇下拉列表

http://jsfiddle.net/Nksku/

HTML

ABC: <input type="radio" name="abc123" id="abc"/> 
123: <input type="radio" name="abc123" id="123"/> 

<select id="theOptions"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="a">a</option> 
    <option value="b">b</option> 
    <option value="c">c</option> 
</select> 

jQuery的

jQuery.fn.filterOn = function(radio, values) { 
    return this.each(function() { 
     var select = this; 
     var options = []; 
     $(select).find('option').each(function() { 
      options.push({value: $(this).val(), text: $(this).text()}); 
     }); 
     $(select).data('options', options); 
     $(radio).click(function() { 
      var options = $(select).empty().data('options'); 
      var haystack = values[$(this).attr('id')]; 
      $.each(options, function(i) { 
       var option = options[i]; 
       if($.inArray(option.value, haystack) !== -1) { 
        $(select).append(
        $('<option>').text(option.text).val(option.value) 
        ); 
       } 
      }); 
     });    
    }); 
}; 

$(function() { 
    $('#theOptions').filterOn('input:radio[name=abc123]', { 
     'abc': ['a','b','c'], 
     '123': ['1','2','3']   
    }); 
});​ 

回答

2

我可能誤會了你想要的,但嘗試尋找這個:

http://jsfiddle.net/Nksku/2/

你想讓他們中的一個作爲默認選擇,並且做第二個盒子需要是空的,直到你袖手旁觀嗎?