Я начинаю с этим объектом,итерация по коллекции Java с помощью JQuery
public class myTO {
private String id;
private String name;
}
, который используется в этом объекте
public myCombiTO {
private myTO myTO;
private List<String> valueList;
private List<String> displayList;
}
создать список этих объектов
List<myCombiTO> myCombiTOList = getMyCombiTOList();
Я использую этот список для установки атрибута страницы jsp
request.setAttribute("myAttrList", myCombiTOList);
И перейдите на страницу jsp. Затем я использую JQuery и JSTL для заполнения выпадающий из этого списка
<select name="mYSelect" id="mySelect">
<c:forEach var="myVar" items="${myAttrList}">
<option value="${myVar.myTO.id}" >
<c:out value="${myVar.myTO.name}" />
</option>
</c:forEach>
</select>
Моя проблема, я хочу, чтобы заполнить вторую каплю вниз, используя JQuery со значениями из mycombiTO.getValueList(). до сих пор у меня есть
$("#mySelect").change(function(){
var myJSList = ${myAttrList};
var chosenGroup = $("#mySelect").val();
var valueArray = myJSList.get(chosenGroup).valueList;
var displayArray = myJSList.get(chosenGroup).displayList;
var items = {'display':[displayArray], 'value':[valueArray]};
//now populate drop downs
$.populateSelect($('#myselect').get(0), items);
});
jQuery.populateSelect = function(element,items) {
$.each(items, function() {
element.options[element.options.length] = new Option(this.display,this.value);
});
};
Однако его не работает, пожалуйста, помогите. У меня возникла проблема с созданием объекта javascript на основе двух массивов. В идеале я хотел бы ссылаться на java-карту из jquery, используя пары ключ/значение. Это возможно ?
Заранее спасибо.
Связанный: http://stackoverflow.com/questions/2263996/populating-child-dropdownlists-in-jsp-servlet – BalusC