有没有办法将VBScript页面包含在使用Javascript编写的ASP页面中?
有一个用Javascript编写的ASP页面,但我们的侧边栏菜单是用VBScript编写的。当我将侧边栏asp文件包含在Javascript中时,服务器会出错。
< %@ LANGUAGE =“JavaScript”%>
<%
...
< ! - #include file =“sidebar.asp” - >
...
使用VBScript编写sidebar.asp。
答案 0 :(得分:1)
您可以试试这个,但我的猜测是sidebar.asp将在您的Javascript代码之前执行。
< %@ LANGUAGE="JavaScript" %>
<%
...
<script language="VBscript" runat=server>
< !--#include file="sidebar.asp"-->
</script>
...
答案 1 :(得分:0)
我一直这样做,但是我的ASP / JScript页面写得有点不同。不是将页面语言切换为“JavaScript”,而是将其保留为默认的“VBScript”,然后使用<SCRIPT LANGUAGE="JavaScript" RUNAT="Server">
块作为我的JScript代码。 JavaScript SCRIPT
块在普通<% %>
标记之前执行,因此我在SCRIPT
块中执行所有页面处理,然后只需将结果插入到<% %>
的页面中标签。这是一个例子:
mainpage.asp:
<SCRIPT LANGUAGE="JavaScript" RUNAT="Server">
var name;
var address;
var phone;
function main() {
var rec = go_to_database();
name = rec.first_name + " " + rec.last_name;
address = rec.address;
phone = rec.phone;
}
</SCRIPT><% main() %>
<html><head><title><%= name %></title></head><body>
<p>Name: <%= name %><br/>
Address: <%= address %><br/>
Phone Number: <%= phone %></p>
<!--#include file="subpage.asp"-->
</body></html>
subpage.asp:
<p>Blah blah blah, some random VBScript code: <%
Dim whatever
whatever = some_silly_thing()
Response.Write(whatever)
%>.</p>
因此,首先IIS处理SSI并将subpage.asp
包含到mainpage.asp
中。然后,它评估JScript SCRIPT
块,声明变量name
,address
和phone
并定义函数main
。
然后按顺序评估每个<% %>
标记。 <% main() %>
调用main
函数并设置name
,address
和phone
的值。然后<%= name %>
,<%= address %>
和<%= phone %>
将这些值替换为页面。最后,评估<% %>
中的subpage.asp
代码,并在页面输出中结束Response.Write
值。
虽然整个页面不是用JScript编写的,但绝大多数代码都可以在SCRIPT
块内。这对你有用吗?