Просмотр исходного кода

Clear bind when comboLookup's value is empty

Oleksandr Naumov 5 лет назад
Родитель
Сommit
a38fd73465
2 измененных файлов с 9 добавлено и 0 удалено
  1. 7 0
      priv/js/comboLookup.js
  2. 2 0
      src/elements/combo/element_comboLookup.erl

+ 7 - 0
priv/js/comboLookup.js

@@ -16,6 +16,13 @@ function comboSelect(dom, row, feed, mod, id) {
                  atom(mod)));
 }
 
+function comboLookupChange(dom) {
+  let elem = qi(dom);
+  if (elem && elem.value == "" && elem.getAttribute("data-bind")) {
+    elem.removeAttribute("data-bind");
+  }
+}
+
 function comboLookupKeydown(dom, feed, mod) {
     var char = event.which || event.keyCode;
     if (char == 40 && !activeCombo && qi(dom).value == '') {

+ 2 - 0
src/elements/combo/element_comboLookup.erl

@@ -24,6 +24,8 @@ render_element(#comboLookup{id=Id, style=Style, value = Val, bind = Object0,
                                ++ nitro:to_list(Id) ++ "','"
                                ++ nitro:to_list(Feed) ++ "','"
                                ++ nitro:to_list(Module) ++ "')"),
+                        onchange= nitro:jse("comboLookupChange('"
+                               ++ nitro:to_list(Id) ++ "')"),
                         bind = Object,
                         value = Val, style = Style, class = column},
                  #panel{id=form:atom([comboContainer, Id]),