我有以下兩個選擇框:如何使用jQuery過濾/克隆選擇框選項?
<select id="project">
<option data-person_ids="[75,76,77]">None</option>
<option data-person_ids="[77]">Project A</option>
<option data-person_ids="[75,76]">Project B</option>
<option data-person_ids="[75]">Project C</option>
</select>
<select id="person">
<option value="75">Person A</option>
<option value="76">Person B</option>
<option value="77">Person C</option>
</select>
如何過濾基於在#project
選擇價值#person
選擇?
這是一個jQuery代碼段同事想出了,但我無法得到它的工作,因爲我還是新的jQuery的:
$(function() {
var $person = $('#person');
$allPersonOptions = $person.children();
$('#project').on('change', function() {
var selected_project = $('#project').data('person_ids');
filterOptions($allPersonOptions.clone(), +selected_project).appendTo($person.empty());
});
});
function filterOptions($options, id) {
return $options.filter(function() {
return $.inArray(id, $(this).data('project_ids')) > -1
});
}
感謝在這個問題上的任何幫助。
謝謝,現在的作品!你可以向jQuery n00b解釋''10'在'parseInt'函數中做了什麼? – Tintin81 2015-01-26 21:08:47
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt – epascarello 2015-01-26 21:09:16
好的,這解釋得非常好。 – Tintin81 2015-01-26 21:10:42