У меня есть кнопка, добавленная в диалог.При нажатии он получает результаты из диалогового окна и отображает их на главной странице.Может быть несколько элементов, которым нужно это сделать, поэтому я пытаюсь создать одну функцию, которая будет работать со всеми из них.Но для этого мне нужно передать имя этой функции, и я не могу понять, как это сделать, не используя глобальную переменную.
Например, приведенный ниже код показывает вызываемое диалоговое окно.Параметр which может быть любым количеством вещей.в функции GetResults результаты захватываются для любого используемого параметра.Код работает нормально, как есть, но я пытаюсь не использовать глобальный.Это возможно?
<script>
var gwhich = '';
function ShowTheDialog(which) {
var dWidth = 200;
var dHeight = 350;
var name = '';
var thisurl = '';
switch (which) {
//set vars here
}
gwhich = which;
$.ajax({
url:thisurl,
success: function(data) {
$("#show-dialog").html(data).dialog({modal:true}).dialog({options:
open,
title:name,
width:dWidth,
height:dHeight,
buttons: {
"Save": GetResults,
"Cancel": function() {
text:'Cancel',
$(this).dialog("close");
}
},
});
}
});
}
function GetResults(){
which = gwhich;
var selectedItem = $("#retval-selected").text();
var apply_to = $("#retval-apply-to").text();
$("#show-selected-"+which).val(selectedItem);
$("#show-apply-to-"+which).val(apply_to);
$("#show-dialog").dialog( "close" );
}
</script>