2012-02-08 58 views
1

在将我的.js文件发送给客户端之前,我可以获取打印数据吗?我希望能够将会话ID打印到变量中以用于解决flash cookie错误。这是我的代码:js中的.NET包含文件

//Add our custom post-params 
       var auth = "<% = If(Request.Cookies(FormsAuthentication.FormsCookieName) Is Nothing, String.Empty, Request.Cookies(FormsAuthentication.FormsCookieName).Value) %>"; 
       var ASPSESSID = "<%= Session.SessionID %>"; 

       this.setPostParams({ 
        ASPSESSID: ASPSESSID, 
        AUTHID: auth 
       }); 

这在我的js文件中显示的方式完全一样。我想要服务器来处理代码!

回答

1

您不能在js文件中包含.NET标记。如果您真的想要这样做,您可以使用ashx文件生成动态脚本文件。

为什么把它写在JS文件中?用ClientScriptManager.RegisterClientScriptBlock将它写入页面,以便JavaScript可以正确缓存。只要包含的脚本出现在代码之后,脚本仍然可以访问页面中的变量。

+0

我想要一个通用的js文件,我可以在我所有使用swfupload(干我的代码)的页面上包含该文件。这样我就可以调用我的makeSWFUpload函数并自动执行其他任何操作。 – 2012-02-08 00:23:23

-1

我想你想立即使用if。像:

var auth = "<% = iif(Request... 
+0

不,JS文件不会呈现服务器端代码。 – epascarello 2012-02-08 00:14:47

+0

哎呀。错误的问题。错过了关于“.js”文件的一点。 – ozczecho 2012-02-08 00:19:35