Я новичок в разработке jQuery, и я использую диалоговое окно jQuery UI, чтобы показать свойства объекта (что угодно).
var $dialog = $('<div></div>')
.html('This dialog will show every time!')
.dialog({
autoOpen: false,
title: 'Properties'
});
Итак, это диалог, и, скажем, у меня есть структура FOR, в которую я добавляю свойства (p-теги), а для некоторых из этих свойств я хочу кнопку.
var dialogHtml = "";
var dialog_buttons = {};
for (var key in d.properties){
var str;
var str = '<p>' + something + '</p>';
if (condition){
dialog_buttons[key] = function()
{ functionName(key); };
}
dialogHtml = dialogHtml + str;
}
$dialog.dialog( "option", "buttons", dialog_buttons );
$dialog.dialog('open');
И где-то еще у меня есть функция:
function functionName(key){
// something something
}
Вот где у меня проблема: переменная ключа, которая передается функции ... когда кнопка вызывается, ключ является последним значением из итерации.
Допустим, у нас есть ключи 1, 2, 3, 4, тогда при нажатии кнопки параметр ключа будет 4.
Я хочу, чтобы при нажатии кнопки в диалоговом окне какая кнопка была нажата .
Кто-нибудь может мне помочь?
Спасибо!