У меня есть страница ASP.NET, которая извлекает набор изображений из таблицы базы данных и, используя перечислитель, просматривает их все и затем отображает.
Все это происходит в выделенном коде (VB.NET), где код добавляет заполнитель и некоторые элементы управления внутри таблиц (таблицы внутри заполнителя).
Я добавил кнопку к этому заполнителю (внутри ячейки таблицы), все программно, но как я могу программно добавить событие щелчка к кнопке? Я хочу запустить javascript (лайтбокс), который показывает большой предварительный просмотр изображения (это работает, когда пользователь щелкает маленькое изображение, которое вызывает строковую гиперссылку на код, указывающий на javascript).





cmdMyButton.attributes.add("onclick", "alert('hello');")?
Вы можете использовать команду OnClientClick для вызова JavaScript на стороне клиента. Если ваша кнопка называлась btnMyButton, напишите свой код следующим образом:
btnMyButton.OnClientClick = "window.open('http://www.myimage.com'); return false;";
использование return false в конце гарантирует, что кнопка не вернет сообщение на страницу. замените javascript тем, что вы хотели сделать.
Альтернативой вышеизложенному будет
btnMyButton.Attributes.Add("onclick", "window.open('http://www.myimage.com'); return false;";
button.Attributes.Add("onclick", "javascript:fireLightBox()")
это C#, но я думаю, что VB.NET был бы очень похож.
Предпочтительный метод .NET Framework для добавления атрибута (например, onClick) к веб-элементу управления:
control.Attributes.Add("onclick", "javascript:DoSomething('" + control.Value + "')")
Вы также можете добавить событие onClick, когда запускается другое событие (например, DataBound):
Private Sub ctlControlName_ActionName(ByVal sender As Object, ByVal e As System.EventArgs)
Handles ctlControlName.ActionName
Dim control As ControlType = DirectCast(sender, ControlType)
control.Attributes.Add("onclick", "javascript:DoSomething('" + control.Value + "')")
End Sub
Надеюсь это поможет!
URL-адрес необходимо указать в кавычках.