demarches-normaliennes/app/javascript/new_design/champs/repetition.js

23 lines
573 B
JavaScript
Raw Normal View History

2019-01-30 16:14:15 +01:00
import { delegate } from '@utils';
const BUTTON_SELECTOR = '.button.remove-row';
const DESTROY_INPUT_SELECTOR = 'input[type=hidden][name*=_destroy]';
const CHAMP_SELECTOR = '.editable-champ';
2019-02-04 21:04:15 +01:00
delegate('click', BUTTON_SELECTOR, evt => {
evt.preventDefault();
2019-01-30 16:14:15 +01:00
2019-02-04 21:04:15 +01:00
const row = evt.target.closest('.row');
2019-01-30 16:14:15 +01:00
2019-02-04 21:04:15 +01:00
for (let input of row.querySelectorAll(DESTROY_INPUT_SELECTOR)) {
input.disabled = false;
input.value = true;
}
for (let champ of row.querySelectorAll(CHAMP_SELECTOR)) {
champ.remove();
}
2019-01-30 16:14:15 +01:00
2019-02-04 21:04:15 +01:00
evt.target.remove();
row.classList.remove('row');
2019-01-30 16:14:15 +01:00
});