You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hydro/packages/ui-default/components/form/form.page.ts

21 lines
707 B
TypeScript

import $ from 'jquery';
import { AutoloadPage } from 'vj/misc/Page';
import { delay } from 'vj/utils';
const formPage = new AutoloadPage('formPage', () => {
$(document).on('vjFormDisableUpdate', 'input, select, textarea', (ev) => {
const $input = $(ev.currentTarget);
const $formItem = $input.closest('.form__item');
$formItem[$input.prop('disabled') ? 'addClass' : 'removeClass']('is--disabled');
});
const submitting = {};
$(document).on('click', '[type="submit"]', (ev) => {
if (submitting[ev.currentTarget]) ev.preventDefault();
submitting[ev.currentTarget] = true;
delay(5000).then(() => { submitting[ev.currentTarget] = false; });
});
});
export default formPage;