Я использую действие пользовательского интерфейса в serviceNow для вызова всплывающего окна GlildeModalForm.
В этом окне есть X (кнопка закрытия), которую мне нужно перехватить, когда пользователь нажимает эту кнопку. У меня нет отзывов об этом нажатии кнопки, и мне нужно отловить
Я видел некоторый пример в сообществе ServiceNow, где вы можете зарегистрироваться в некоторой функции обратного вызова, но она используется только после отправки формы.
var modalForm = new GlideModalForm('Create User Member' , tableName );
modalForm.setOnloadCallback(formOnLoadCallback);
modalForm.setCompletionCallback(formAfterSubmitCallback);
modalForm.render();
function formOnLoadCallback() {
//Access GlideModal g_form to set field for the new record
var d_form = window.frames["dialog_frame"].g_form;
d_form.setValue('field', g_form.getValue('field'));
d_form.setValue('field', g_form.getValue('field'));
}
function formAfterSubmitCallback(action_verb, sys_id, table, displayValue) {
//Get the newly created record sys_id and then set e.g a value to the starting record
g_form.setValue('field', sys_id);
//Save the record
g_form.save();
}
Используя инспектор элементов моего браузера, я вижу, что кнопка Закрыть определяется следующим образом:
<button data-dismiss="GlideModal" class="btn btn-icon close icon-cross"
id="x_58872_needit_cascadesequence_closemodal"> <span
class="sr-only">Close</span>
</button>
Мне нужно найти эту кнопку из приведенного выше скрипта, а затем зарегистрироваться в ее onClick, а затем в onClick, даже если бы я просто хотел отправить предупреждение о потенциальной потере данных
Спасибо за помощь в этом