0.0.33 forms
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
function chooseCheckbox(el) {
|
||||
if (!el) return;
|
||||
resetFieldError(el);
|
||||
|
||||
let $parent = el.closest('.field_container');
|
||||
let $checkbox = $parent.querySelector('.checkbox')
|
||||
@@ -128,4 +129,63 @@ function selectInputWContainer (el, callback) {
|
||||
$input.focus()
|
||||
|
||||
if (callback) callback(el);
|
||||
}
|
||||
|
||||
function resetFieldError (el){
|
||||
if (!el) return;
|
||||
let $field = el.closest('.field_container');
|
||||
if (!$field) return;
|
||||
|
||||
let $error = $field.querySelector('.error_container');
|
||||
if (!$error) return;
|
||||
|
||||
if (!checkFieldEmpty($field)){
|
||||
$error.remove()
|
||||
}
|
||||
}
|
||||
|
||||
function checkFieldEmpty($field) {
|
||||
if (!$field) return;
|
||||
let empty = true;
|
||||
|
||||
switch ($field.dataset.type) {
|
||||
case 'checkbox':
|
||||
let $checkbox = $field.querySelector('.checkbox');
|
||||
let c_value = $checkbox.classList.contains('checked');
|
||||
if (c_value) empty = false;
|
||||
|
||||
break;
|
||||
|
||||
case 'radio':
|
||||
let $radio = $field.querySelector('.radio.checked');
|
||||
if ($radio) empty = false;
|
||||
|
||||
break;
|
||||
|
||||
case 'location':
|
||||
let $location = $field.querySelector('input');
|
||||
let l_value = $location.dataset.id;
|
||||
|
||||
if (l_value) empty = false;
|
||||
break;
|
||||
|
||||
case 'input':
|
||||
let $input = $field.querySelector('input');
|
||||
if ($input.value) empty = false;
|
||||
|
||||
break;
|
||||
|
||||
case 'textarea':
|
||||
let $textarea = $field.querySelector('textarea');
|
||||
if ($textarea.value) empty = false;
|
||||
|
||||
break;
|
||||
|
||||
case 'date':
|
||||
let $date = $field.querySelector('input');
|
||||
if ($date.value) empty = false;
|
||||
|
||||
break;
|
||||
}
|
||||
return empty;
|
||||
}
|
||||
Reference in New Issue
Block a user