VBscript передает параметры во включаемый файл - PullRequest
0 голосов
/ 15 марта 2011

Хорошо, я новичок в мире asp / vbscript. Я работаю в новой компании и пытаюсь воспроизвести скрипт, который я использую почти во всех проектах при разработке под php. У меня есть две функции, одна из которых называется showHeader, а другая - showFooter. Эти функции передают им аргументы, и эти аргументы должны отображаться во включенном файле. Например, в php моя функция showHeader выглядит так:

<?php
showHeader($page,$title,$passedCSS,$desc,$keywords) {
include("header.php");
}
?>

Теперь во включаемом файле я могу отобразить содержимое любого из этих аргументов, просто вызвав echo $ var, и я получу содержимое. Это возможно с VBScript. Мне не повезло, что когда-либо.

Ответы [ 3 ]

1 голос
/ 17 марта 2011

Хорошо, вот что я сделал

global.asp


   <%@LANGUAGE="VBSCRIPT"%>
<%  
    Sub showHeader(page,title,passedCSS,desc,keywords)
%>
        <!---#include file="header.asp"--->
<%
    end Sub

    Sub showFooter(passedJS)
%>
        <!---#include file="footer.asp"--->
<%
    end Sub
%>

Затем в header.asp и footer.asp я прошел в переменные просто используя <%=varname%>

Тогда в main.asp мой код был следующим.

<!---#include file="global.asp"--->
<% showHeader "Home","Test Page","test.css","Description","keywords" %>
        <section>
        </section>

        <aside>
        </aside>

        <section>
            <h2></h2>
            <ul>
                <li><article></article></li>
                <li><article></article></li>                
            </ul>
        </section>

        <section>
            <div></div>
            <div></div>
            <div></div>
        </section>
<% showFooter "testjs.js" %>

И все прекрасно работает.

1 голос
/ 15 марта 2011

@ projectxmatt: Вы можете сделать что-то вроде -

В header.asp:

<%
Sub showHeader(page, title, passedCSS, desc, keywords)
%>
<!-- some HTML code here -->
<title><%=page %></title>
<!-- more HTML code here -->
<%
End Sub
%>

В somefile.asp:

<!-- #include file="header.asp" -->
<% showHeader "value-for-page", "My Page Title", "", "", "" %>

В ASP вы должны указать все переменные, которые есть в ваших Sub или Function, они не могут быть опущены или назначены по умолчанию, как в PHP, если ни одна из них не была передана функции (например, function showHeader(title = 'Default Value'))

0 голосов
/ 15 марта 2011

Response.Write было бы другим решением, которое вы могли бы использовать для записи вывода в классическом ASP.

...