2017-02-23 59 views
1
<input id="Button1" type="button" value="button" onclick='window.open("https://google.com")' /> 

Мне нужно изменить это, используя настройки webconfig.Как значение appsetting WebConfig можно вызывать внутри функции window.open ASP.NET?

В WebConfig, у меня есть

<add key="Google" value="https://google.com"/> 

Я должен получить URL WebConfig с помощью ключа.

Я попытался

<input id="Button1" type="button" value="button" onclick='window.open("<%= ConfigurationManager.AppSettings["Google"] %>")' /> 

Но это не работает.

Не могли бы вы найти решение для доступа к значениям настроек webconfig в функции window.open?

ответ

0

Использование JS метод:

function openUrl(url) { 
    var newWind = window.open(url, '_blank'); 
    newWind.focus(); 
} 

и:

<input id="Button1" type="button" value="button" onclick='openUrl("<%= ConfigurationManager.AppSettings["Google"].ToString() %>")' /> 

Или прочитать ключ в JS

function openUrl() { 
     var url = '<%=ConfigurationManager.AppSettings["Google"].ToString() %>'; 
     var newWind = window.open(url, '_blank'); 
     newWind.focus(); 
} 
+0

Работает нормально. Спасибо за помощь. :) Но рядом с двойными кавычками появляется сообщение об ошибке «unterminated string constant» –

0

Попробуйте использовать переменную в код, например

string openUrl = ConfigurationManager.AppSettings["Google"]; 

А затем на странице

<input id="Button1" type="button" value="button" onclick='window.open("<%= openUrl %>")' /> 

EDIT - на основе комментариев хотения сделать это в самой ASPX странице (не уверен, почему вы хотели бы это сделать, но я уверен, что у вас есть причины).

<% string openUrl = System.Configuration.ConfigurationManager.AppSettings["Google"]; %> 
<input id="Button1" type="button" value="button" onclick='window.open("<%= openUrl %>")' /> 
+0

Есть ли решение в самой ASPX странице? –

+0

Я полагаю, вы можете обернуть объявление переменной внутри блока кода <% %>, если вы действительно хотите пойти по этому пути. См. Мое редактирование. –

+0

t работает нормально. Спасибо за помощь. :) –

Смежные вопросы