Диалоговое окно - это просто div
на вашей странице, поэтому оно не может быть "передано" значению.Тем не менее, он может управляться любыми переменными JavaScript в области видимости.Вы можете изменить свой обработчик кликов, чтобы использовать переменную для управления диалогом:
var myVariable = "Some new text for the dialog";
$('#dialog_link').click(function(){
//New code to "pass" a value to the dialog
$('#dialog').text(myVariable);
$('#dialog').dialog('open');
return false;
});
Или вы можете использовать open
член диалога:
...
width: 452,
open: function() { $('#dialog').text(myVariable); },
modal: true,
...
Чтобы внести изменения вдиалоговое окно div
всякий раз, когда он открывается.
Код id='dialog_link(someValue)'
ничего не будет делать, поскольку атрибут id
не может выполнять вызовы функций, это могут делать только обработчики событий, такие как onchange
.Даже если это возможно, dialog_link
не является функцией, которой можно передать значение.Это просто id
другого элемента.
Я уверен, что вы, вероятно, уже знаете, но документация jQuery очень полезна - вот документы для диалога.
Редактировать
В ответ на ваш комментарий: я бы бросил оператор $('#dialog_link').click();
и изменил код ссылки на следующий:
<a href='#' class='OrangeButton' onclick='openDialog(someValue);'>Show Window</a>
А затем добавьте JavaScript-функцию, которая будет вызываться при событии click:
function openDialog(value) {
$('#dialog').text(value);
$('#dialog').dialog('open');
}
Edit 2
Внутри цикла ASP что-то вроде этого должно помочь:
Response.Write("<a href='#' onclick='openDialog(" & Products(0) & ");'>Show</a>")
Это создаст на странице элемент <a></a>
с обработчиком onclick
, который передает требуемое значение в openDialog
, делая его доступным для диалога.
Iслегка изменил код ссылки, чтобы он умещался в одну строку, но вы всегда можете добавить обратно class='OrangeButton'
и все это, если хотите.