Tengo una "casilla de verificación" igCombobox, cuando no se selecciona nada, todavía envía el formulario, que no quiero que suceda.

Estoy usando este código para enviar:

 <div id="checkboxSelectCombo" name="kanal" style="position:absolute;" ></div>

 $("#checkboxSelectCombo").on( "focusout",function() {
  $(this).closest("form").submit();
     });

Entonces, traté de usar la instrucción if, si el valor es mayor que cero o no es una cadena vacía

$("#checkboxSelectCombo").on( "focusout",function() {
             if($(this).val()>0 || $(this).val()!=""){
  $(this).closest("form").submit();}
     });

Pero como no puedo obtener el valor de checkboxSelectCombo, no funcionará. Ya busqué en la documentación de igCombobox, pero no encontré nada.

1
Somepub 20 mar. 2017 a las 16:49

2 respuestas

La mejor respuesta

Encontré una solución a mi problema. Como Zdravko Kolev dijo que debería usar dropDownClosed, pude evitar enviar sin seleccionar nada en el igComboBox con este código

 dropDownClosed: function (evt, ui) {
                var dpValue = ui.owner.value();  
                 if(dpValue != 0){                 //dpValue>0
                $(this).closest("form").submit();
                 }
            }
2
Somepub 22 mar. 2017 a las 07:20

Como veo, está enviando el formulario en cada foco. Puede realizar el envío en evento de SelectionChanged o < a href = "http://www.igniteui.com/help/api/2016.2/ui.igCombo#events:dropDownClosed" rel = "nofollow noreferrer"> dropDownClosed por ejemplo. Desde estos eventos puede acceder a la lista de elementos o realizar algunas comprobaciones. Tenga en cuenta que no son cancelables.

2
Zdravko Kolev 21 mar. 2017 a las 15:09