При попытке открыть RadWindow со стороны сервера, получая ошибку как «нулевая ссылка» в Javascript - PullRequest
0 голосов
/ 18 февраля 2019

Я создал окно Rad для на странице aspx и в методе нажатия кнопки я написал код для открытия radwindow в VB.Net, но я получаю сообщение об ошибке, и окно не открывается.

radWinChCode.NavigateUrl = "buildchrcd.aspx?BU=" & strBU & "&USER=" & strChgCdUser & "&HOME=N&FROMRAD=RAD"
    radWinChCode.OnClientClose = "OnClientClose"
    radWinChCode.Title = "Enter Charge Code"
    Script = "function f(){$find(""" + radWinChCode.ClientID + """).show(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);"
    ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, True)

Необработанное исключение в строке 48, столбец 14 в блоке сценария

0x800a138f - Ошибка времени выполнения JavaScript: невозможно получить свойство 'show' с неопределенной или нулевой ссылкой

Ответы [ 2 ]

0 голосов
/ 11 августа 2019

Проблема, скорее всего, связана с тем, что для свойства Visible установлено значение False для RadWindow.В этом случае элемент управления не отображается на странице, поэтому сценарий ClientSide не может получить ссылку на него.

Предполагается, что для свойства RadWindow установлено значение false:

<telerik:RadWindow ID="radWinChCode" runat="server"  Height="800px" Width="1024px" Visible="false"></telerik:RadWindow>
</telerik:RadAjaxPanel>

Установите для свойства Visible окна значение True в обработчике событий нажатия кнопки:

Protected Sub RadButton1_Click(sender As Object, e As EventArgs)
    radWinChCode.Visible = True 'Make the window be rendered on the page

    radWinChCode.NavigateUrl = "buildchrcd.aspx?BU=" & strBU & "&USER=" & strChgCdUser & "&HOME=N&FROMRAD=RAD"
    radWinChCode.OnClientClose = "OnClientClose"
    radWinChCode.Title = "Enter Charge Code"
    Dim myScript = "function f(){$find(""" + radWinChCode.ClientID + """).show(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);"
    ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", myScript, True)
End Sub
0 голосов
/ 20 февраля 2019

Убедитесь, что:

  • экземпляр RadWindow, с которым вы работаете, фактически добавляется на страницу

  • , если вы используете AJAX,убедитесь, что она участвует в ответе

  • строка не содержит разделителей символов, таких как кавычки и апострофы, которые могут разбить саму строку

...