Как вызвать функцию javascript из кода позади, но не при загрузке страницы?
Я пытался понять это в течение нескольких дней.
Я прочитал много потоков, которые упоминают вызов javascript через код позади с помощью ClientScriptManager, но все они, похоже, запускают функцию javascript только при загрузке страницы или при отправке, или при нажатии кнопки.
Воспользоваться этой страницы например:
Несколько способов вызвать функцию JavaScript из отделенного кода в ASP.Net[^]
Конечно, есть способ не запускать javascript при загрузке страницы, но всякий раз, когда пользователь хочет вызвать его из функции C# или Vb? Однако мне еще предстоит найти ответ.
Проблема, по-видимому, заключается в том, что для вызова метода aspx.cs из функции C# метод aspx.cs должен быть "общим", иначе, если мы вызываем экземпляр класса из метода C#, он не работает. Но, с другой стороны, Пейдж.ClientScript требует Ссылки на объект, поэтому его невозможно заставить работать.
Эта проблема также объясняется в этой теме:
Проблема ClientScript | The ASP.NET форумы[^]
Я был бы очень благодарен, если бы кто-нибудь показал мне, как это сделать.
Что я уже пробовал:
Все предложенные ответы из других потоков, которые запускают код при загрузке страницы, - это не то, что я ищу.
Пример:
Public Class home Inherits Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load pageTitle.Text = "Query Builder v" & System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString() Dim Script As ClientScriptManager = Page.ClientScript If Not Script.IsClientScriptBlockRegistered(Me.[GetType](), "Alert") Then Script.RegisterClientScriptBlock(Me.[GetType](), "Alert", "<script type=text/javascript>alert('hi')</script>") End If End Sub End Class