У меня есть функция Javascript
которую мне нужно вызвать по коду в vb.net
. Основная проблема заключается в том, что он не называется должным образом, потому что перед этой функцией выполняется перенаправление на следующую страницу. Я не хочу вызывать эту функцию в событии Onclick
кнопки или что-то вроде этого, я хочу вызвать ее после некоторого определенного условия в коде. Я уже пробовал следующие решения, пожалуйста, дайте мне знать, если у вас есть другие предложения.
System.Web.UI.ScriptManager.RegisterClientScriptBlock(Page, Me.GetType(), "Script", "ShowEntryPermForm();", True)
Page.ClientScript.RegisterStartupScript(Me.GetType(), "Window", "ShowEntryPermForm();", True)
Описание проблемы: добавлено из комментария
Сценарий заключается в том, что в функции javascript я проверил различные условия, связанные с проектом, и он открывает всплывающее окно, в котором пользователь вводит свои комментарии.
Это не обязательно, каждый раз, когда функция откроет всплывающее окно. Но по умолчанию страница перенаправляется на новую страницу, так как функции Javascript и перенаправление в другое окно запускаются при нажатии кнопки.
Но теперь мое требование изменилось, теперь я должен вызвать функцию из кода позади в определенном состоянии. Надеюсь, ты получишь это сейчас
Вы можете сделать это следующим образом.
window.onbeforeunload = function()
{
//your code goes here
return "";
}
Если вы вернете что-нибудь здесь, браузер отобразит и спросит пользователя, следует ли оставить страницу. В вашем случае вам не нужно ничего возвращать, кроме запуска кода.
Единственный способ - разделить код и javascript так, чтобы они не полагались друг на друга
например, вы создаете скрытую кнопку asp: с остальным кодом на стороне сервера
сторона сервера:
if(...) then
page.ClientScript.RegisterStartupScript(Me.GetType(), "Window", "ShowEntryPermForm();", True)
else
page.ClientScript.RegisterStartupScript(Me.GetType(), "Window", "otherfunction();", True)
end if
sub IDServersideHiddenbutton(obj as object ,e as eventargs)handles IDServersideHiddenbutton.click
rest of the server side code including the redirect
end sub
сторона клиента :
javascript ShowEntryPermForm()
{
// javascript code
$("#IDServersideHiddenbutton").click();
}
javascript otherfunction()
{
//just the click
$("#IDServersideHiddenbutton").click();
}
Я действительно не знаю вашу структуру кода, но вы можете манипулировать ею, чтобы работать с этой идеей
javascript
? Какой реальный сценарий нужно кодировать?