的下拉列表中,我試圖讓一個下拉列表,當選擇了一個項目,然後另一個下拉菜單會改變它的列表
我怎樣才能重新填充jQuery中
所以放屁,這是我做了什麼,
這第一下拉式選單,將改變另一個下拉列表:
<select id="testers_team-${info.problemId}" class="tester_team">
<optgroup label="Current Value">
<option><c:out value="${info.team}"></c:out></option>
</optgroup>
<optgroup label="Teams">
<c:forEach var="team" items="${requestScope.testers}">
<option value="${team.key}">${team.key}</option>
</c:forEach>
</optgroup>
</select>
這是秒下拉式選單,將改變如果選擇了另一個下拉:
<select id="testers" class="testers_team-${info.problemId}">
<optgroup label="Current Assigned Tester">
<option>I'll think about this later</option>
</optgroup>
<optgroup label="Testers">
<c:forEach var="testers_per_team" items='${test.KwekKwek}'>
<option>${testers_per_team}</option>
</c:forEach>
</optgroup>
</select>
此代碼是獲得適當的值,並將其發送迴應該重新填充的下拉列表中Ajax
:
$('.tester_team').each(function(){
$(this).change(function() {
var id = $(this).attr('id');
$.post('Analysis',
{team: $(this).val()},
function(data)
{
$('.'+id).each(function()
{
$(this).find('option').remove();
$.each(data, function(index, value) {
$('<option>').text(value).appendTo($select);
});
});
},"json");
});
});
什麼都已經完成是:
- 發送到servlet第一下拉
- 臨的設定值塞斯的值,使之返回正確的值重新填充第二個下拉
- 在
JSON
形式獲取價值 - 刪除從第二個下拉列表時的第一個下拉列表中選擇另一個值
的問題是重新填充本身,是用來
$.each(data, function(index, value) {
$('<option>').text(value).appendTo($select);
});
重新填充第二個下拉列表中,但似乎代碼是錯誤的。請幫我解決這個問題。
注:兩個下拉由foreach
這就是爲什麼迭代使用第一下拉的id
到第二下拉相對於識別它。關於servlet發回的數據,它不是null,我試圖在alert();
中彈出它,它就在那裏。
什麼是您的appendTo $ select? – fliim
這應該是一個ID嗎? – user2785929
@fliim傻了我。我應該把直接上課。還有一個問題,我怎麼才能改變'