#16: correct handling for boatData config items
This commit is contained in:
parent
e3723be7e2
commit
0b906d55c2
27
web/index.js
27
web/index.js
|
@ -121,7 +121,12 @@ function resetForm(ev) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (el.tagName === 'SELECT') {
|
||||||
|
setSelect(el,v);
|
||||||
|
}
|
||||||
|
else{
|
||||||
el.value = v;
|
el.value = v;
|
||||||
|
}
|
||||||
el.setAttribute('data-loaded', v);
|
el.setAttribute('data-loaded', v);
|
||||||
let changeEvent = new Event('change');
|
let changeEvent = new Event('change');
|
||||||
el.dispatchEvent(changeEvent);
|
el.dispatchEvent(changeEvent);
|
||||||
|
@ -459,14 +464,30 @@ function createInput(configItem, frame,clazz) {
|
||||||
return el;
|
return el;
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateSelectList(item,slist){
|
function setSelect(item,value){
|
||||||
item.innerHTML='';
|
if (!item) return;
|
||||||
|
item.value=value;
|
||||||
|
if (item.value !== value){
|
||||||
|
//missing option with his value
|
||||||
|
let o=addEl('option',undefined,item,value);
|
||||||
|
o.setAttribute('value',value);
|
||||||
|
item.value=value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateSelectList(item,slist,opt_keepValue){
|
||||||
let idx=0;
|
let idx=0;
|
||||||
|
let value;
|
||||||
|
if (opt_keepValue) value=item.value;
|
||||||
|
item.innerHTML='';
|
||||||
slist.forEach(function (sitem) {
|
slist.forEach(function (sitem) {
|
||||||
let sitemEl = addEl('option','',item,sitem.l);
|
let sitemEl = addEl('option','',item,sitem.l);
|
||||||
sitemEl.setAttribute('value', sitem.v !== undefined?sitem.v:idx);
|
sitemEl.setAttribute('value', sitem.v !== undefined?sitem.v:idx);
|
||||||
idx++;
|
idx++;
|
||||||
})
|
})
|
||||||
|
if (value !== undefined){
|
||||||
|
setSelect(item,value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
function getXdrCategories(){
|
function getXdrCategories(){
|
||||||
let rt=[];
|
let rt=[];
|
||||||
|
@ -1462,7 +1483,7 @@ function updateDashboard(data) {
|
||||||
}
|
}
|
||||||
if (selectChanged){
|
if (selectChanged){
|
||||||
forEl('.boatDataSelect',function(el){
|
forEl('.boatDataSelect',function(el){
|
||||||
updateSelectList(el,selectList);
|
updateSelectList(el,selectList,true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue