0

我需要在 mm/dd/yyyy 中从服务器获取日期,而不需要任何 javascript 或 asp 代码。我更愿意将其作为在当前文档框架中流动的链接,并将 mm/dd/yyyy 作为 css 或其他非基于代码的解决方案注入当前的 html 网页。我也不想使用任何无关的查询语言,例如 xslt、xquery 或 plinq。

例子:

<h3>Date:<date format="mm/dd/yyyy" src="currentdate.asp" /></h3>

输出:

日期:06/26/2012

4

3 回答 3

4

不,这是一项不可能完成的任务。

HTML 是一种静态语言。不可能使用没有任何动态元素(javascript、php、ssi 等)的静态语言并让它改变页面。

您将需要找到一种方法来放松项目的约束,因为目前这不仅不可能而且不合逻辑。

编辑:

我想到了一种可能的方式,但它不会很漂亮。

你可以使用一个<iframe src="date.asp">并且如果date.asp唯一返回日期那么它会起作用。这是唯一可行的方法。

于 2012-06-26T22:36:32.683 回答
1

您始终可以将其img设为 ,然后使用即时 img 生成器,该生成器从服务器生成文本作为图像。您可以使用诸如 csImageFile 之类的东西在图像中动态生成文本。

http://www.chestysoft.com/imagefile/default.asp

您的图像将如下所示:

     <img src="date.asp" />

然后您的date.asp文件将生成一个新图像(response.contenttype="image/jpeg"在每次通话中使用当前日期。

但是您的日期将显示为图像,而不是文本。

或者,您可以使用像 secretformula 的答案这样的 iFrame,或者为此使用 Ajax/jQuery。但是,如果您不从服务器收集数据,那么您的日期将来自客户端。

于 2012-06-26T23:41:12.303 回答
1

正如其他人所说,如果没有至少一点 javascript,您将无法实现这一目标。您可以做的是使用 jquery 选择所有日期标签,然后发布 ajax 以您喜欢的格式获取当前日期。

像这样:

    <script type="text/javascript">
        $(document).ready(function(){
            $("date").each(function(index, element) {
                var d = $(this);
                $.post("ullu.asp", {
                    ajax: true,
                    act: "currentdate",
                    format: d.attr("format")
                }, function(data) {
                    d.after("<span>" + data + "</span>");
                });
            });
        });
    </script>

<h3>Date:<date format="%m/%d/%Y" /></h3>

然后在 ullu.asp 上:

<%
if request("ajax") = "true" then
    dim d : d = DateTime.FormatDate(request("format"), now)

    response.write d
end if
%>

DateTime 是我的一类,用于格式化日期,您可以使用自己的实现......此外,您可以在标签中添加另一个属性,例如“src”,以便将您的 ajax 发送到那里。

我知道您想在不“使用代码”的情况下执行此操作,但这是不可能的。使用此解决方案,您只需添加一些处理所有标签的 javascript...

于 2012-06-27T06:49:45.440 回答