refactored dependant field check
This commit is contained in:
		@@ -98,16 +98,21 @@ class ValidationField {
 | 
			
		||||
 | 
			
		||||
            // dependant fields
 | 
			
		||||
            if (this.dependant) {
 | 
			
		||||
                const parent = this.validationInstance.form.querySelector(`[name=${this.dependant}]`)
 | 
			
		||||
                const parents = this.validationInstance.form.querySelectorAll(`[name="${this.dependant}"]`)
 | 
			
		||||
 | 
			
		||||
                const depCheck = () => {
 | 
			
		||||
                    parent.value
 | 
			
		||||
                        ? this.el.removeAttribute('disabled')
 | 
			
		||||
                        : this.el.setAttribute('disabled', 'disabled')
 | 
			
		||||
                    if (((parents[0].type === 'checkbox' || parents[0].type === 'radio') && this.validationInstance.form.querySelectorAll(`[name="${this.dependant}"]:checked`).length > 0) ||
 | 
			
		||||
                        (((parents[0].type !== 'checkbox' && parents[0].type !== 'radio') && parents[0].value))) {
 | 
			
		||||
                            this.el.removeAttribute('disabled')
 | 
			
		||||
                        } else {
 | 
			
		||||
                            this.el.setAttribute('disabled', 'disabled')
 | 
			
		||||
                        }
 | 
			
		||||
                }
 | 
			
		||||
                depCheck()
 | 
			
		||||
 | 
			
		||||
                parent.addEventListener('input', depCheck)
 | 
			
		||||
                for (const parent of parents) {
 | 
			
		||||
                    parent.addEventListener('input', depCheck)
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // add required indicator
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user