Я мало знаю о написании хорошего javascript, поэтому, возможно, я думаю об этом не так, но вот ситуация.Как я могу установить крючок в диалоговом окне jQuery ui?
У меня есть страница, которая содержит различные плагины, каждая с кнопкой редактирования.
Так, например, HTML-плагин, щебетать плагин и т.д.
После того, как вы нажмете на кнопку редактирования диалоговое окно JQuery UI отображается с помощью общей функции, все кнопки редактирования общаетесь. Содержимое диалогового окна заполняется формой обновления данного конкретного плагина.
Диалог, созданный этой общей функцией, также автоматически открывает кнопку «Сохранить» и «Отмена».
Поскольку обе эти кнопки «Сохранить» и «Отмена» создаются в диалоговом окне, они оба назначают замыкания на «щелчок».
Что я хочу сделать, если это возможно, предоставляет какую-то функцию крючка, которую можно запустить при нажатии кнопки «Сохранить», которая может быть определена javascript в каждой из форм обновления плагина.
Я думаю, что я объяснил достаточно сейчас, так вот некоторые примеры кода:
Это скажет каждый из кнопок редактирования, чтобы создать диалоговое окно и заполнить его с соответствующим содержанием.
// This function is called by each edit button
// on a click event which passes the required ids
function update_form_dialog(plugin_id) {
$.post(
'/get_plugin_update_form',
{
'plugin_id': plugin_id
},
function(response) {
var dialog = $('<div class="update_form"></div>').appendTo('body');
dialog.dialog({
open: function() {
dialog.html(response);
},
show: 'fade',
modal: true,
title: 'Update plugin',
width: 'auto',
height: 'auto',
buttons: [
{
text: 'Save',
click: function() {
// Call a hook defined in the plugin update
// form then send update data
}
},
{
text: 'Cancel',
click: function() {
// Close the dialog here
}
}
]
});
}
);
}
Как вы можете видеть в коде выше, что у меня есть довольно простой, но я не знаю, как я могу добавить крюк к началу функции нажмите кнопку «Сохранить» в.
Форма обновления каждого плагина хранится в переменной response
, и здесь записывается javascript с плагином обновления.
Есть ли способ, которым я могу указать кнопку сохранения, что делать до того, как он запустит свой обычный код при нажатии кнопки «Сохранить»?
Если кому-то нужно больше объяснений, пожалуйста, дайте мне знать.
Любая помощь в отношении того, как я могла бы написать это, была бы очень признательна.
Edit:
Кажется, у меня возникают проблемы объяснить мою проблему так что надеюсь, это редактирование поможет сделать вещи более ясными.
Я хочу выполнить какой-то код, который будет необязательно определен в содержимом диалогового окна при его открытии. Этот код, если он определен, должен быть выполнен после нажатия кнопки сохранения, но до того, как будет выполнена фактическая функция щелчка. Это возможно?
Вы хотите что-то сделать до того, как код будет выполнен? Или вы хотите, чтобы приложить к этому исполнению? –
@EduardoCrimi Спасибо за ваш комментарий. Я хочу выполнить некоторый код, который будет опционально определен в содержимом диалогового окна, когда он был открыт. Этот код, если он определен, должен быть выполнен после нажатия кнопки сохранения, но до того, как будет выполнена фактическая функция щелчка. –