ASP - Взаимодействие с клиентскими сценариями
Средства ASP позволяют создавать клиентские сценарии и управлять ими. Например, имеется возможность создания серверных сценариев, объединяющих клиентские сценарии с учетом используемых на сервере переменных, типа обозревателя, с которым работает пользователь, или параметров HTTP-запроса.
Совместное использование инструкций серверных и клиентских сценариев (в HTML-тегах <SCRIPT>), пример которого показан в следующем шаблоне, позволяет динамически инициализировать и изменять клиентские сценарии в ходе выполнения запроса:
<SCRIPT LANGUAGE=VBScript> <!-- variable = <%=server defined value %> . . . client-side script <% server-side script used to generate a client-side statement %> client-side script . . . --> </SCRIPT>
Применение подобных возможностей позволяет создавать полезные и интересные приложения. Ниже представлен пример серверного сценария (на VBScript), который управляет клиентским сценарием (на JScript):
<% Dim dtmTime, strServerName, strServerSoftware, intGreeting dtmTime = Time() strServerName = Request.ServerVariables("SERVER_NAME") strServerSoftware = Request.ServerVariables("SERVER_SOFTWARE") 'Generate a random number. Randomize intGreeting = int(rnd * 3) %> <SCRIPT LANGUAGE="JScript"> <!-- //Call function to display greeting showIntroMsg() function showIntroMsg() { switch(<%= intGreeting %>) { case 0: msg = "This is the <%= strServerName%> Web server running <%= strServerSoftware %>." break case 1: msg = "Welcome to the <%= strServerName%> Web server. The local time is <%= dtmTime %>." break case 2: msg = "This server is running <%= strServerSoftware %>." break } document.write(msg) } --> </SCRIPT>
Подобные сценарии могут быть дополнены, например модулем для настройки клиентской базы данных или для личной настройки DHTML. Применение этого передового подхода позволит, в числе прочего, снизить загрузку, связанную с двойным обменом данными между сервером и компьютером пользователя, и сократить обработку, которая выполняется на сервере.