У меня есть три объекта selectmenu в div. Первый загружается со страницей. Когда я выбираю что-то в первом, это значение используется для заполнения второго ... выбор во втором заполняет третье.
Прежде чем я вставлю новые биты в поле, мне нужно очистить старые.
Кажется, не работает - так что я делаю что-то глупое. Нет сообщений об ошибках .. просто нет опорожнения.
firstSelect = $("#first");
$.ajax({
populate 'first'
});
secondSelect = $("#second");
firstSelect.selectmenu({
change: function( event, data ) {
secondSelect.empty();
getSeconds(data.item.value);
}
}).selectmenu("menuWidget").addClass('overflow');
thirdSelect = $("third");
secondSelect.selectmenu({
change: function( event, data ) {
thirdSelect.empty();
getThirds(data.item.value);
}
}).selectmenu( "menuWidget" ).addClass('overflow');
<body>
<div>
<select id='first'></select>
<select id='second'></select>
<select id='third'></select>
</div>
</body>
Я тоже пробовал $("#selectId").html("");
Когда вы вызываете firstSelect = $("#first");
$.ajax({
populate 'first'
});
secondSelect = $("#second");
firstSelect.selectmenu({
change: function( event, data ) {
secondSelect.empty();
getSeconds(data.item.value);
}
}).selectmenu("menuWidget").addClass('overflow');
thirdSelect = $("third");
secondSelect.selectmenu({
change: function( event, data ) {
thirdSelect.empty();
getThirds(data.item.value);
}
}).selectmenu( "menuWidget" ).addClass('overflow');
, он удаляет элементы <body>
<div>
<select id='first'></select>
<select id='second'></select>
<select id='third'></select>
</div>
</body>
из базового элемента $("#selectId").html("");
, но не обновляет плагин selectmenu автоматически. Вам нужно сделать это вручную, используя параметр $("#selectid").selectmenu("refresh")
, например:
firstSelect = $("#first");
$.ajax({
populate 'first'
});
secondSelect = $("#second");
firstSelect.selectmenu({
change: function( event, data ) {
secondSelect.empty();
getSeconds(data.item.value);
}
}).selectmenu("menuWidget").addClass('overflow');
thirdSelect = $("third");
secondSelect.selectmenu({
change: function( event, data ) {
thirdSelect.empty();
getThirds(data.item.value);
}
}).selectmenu( "menuWidget" ).addClass('overflow');
Пробовал использовать $("#selectid").selectmenu("refresh")
и $("#selectid").empty().selectmenu("refresh")
- оба выдают мне эту ошибку, когда я пытаюсь открыть список (щелкнув по нему):
Редактировать: