Javascript错误......我想

时间:2008-12-11 09:48:09

标签: javascript vbscript

我一直试图解决这个问题两个小时,我无法理解。

onclick = "location='exceltest.asp?vanjaar=<%=vanjaar%>&vanmaand=<%=vanmaand%>&vandag=<%=vandag%>&totjaar=<%=totjaar%>&totmaand=<%=totmaand%>&totdag=<%=totdag%>'"

该代码行位于&lt; input type =“button”/&gt;属性。该按钮链接到应该触发Excel下载的页面。 URL中的值是from和date-parts部分。 (年,月,日)

这样:

onclick = "location='exceltest.asp?fromdate=<%=fromdate%>&todate=<%=todate%>'" /> 

不起作用,因为IE7以某种方式读取日期(例如2008/1/1)错误。我认为与斜杠有关。

但是当我尝试单击IE中的按钮并因此下载生成的文件时,Internet Explorer会尝试下载该文件

  

exceltest.asp?vanjaar = 2008vanmaand = 1vandag = 1totjaar = 2008totmaand = 2totdag = 1

而不是我想要的excel文件 FF提供下载excelfile,但给(在那个excelfile)一个htmlpage的概述,错误消息告诉我我的查询是错误的(项目不能在对应于所请求的名称或序号的集合中找到。)但是不能是的,我在其他地方使用完全相同的查询,使用相同(但重新启动)的连接。

这是我用来实例化文件下载的代码:

Response.Buffer = TRUE  
Response.ContentType = "application/vnd.ms-excel"  
Response.AddHeader "content-disposition", "attachment; filename=overicht.xls"  

这里可能会发生一些事情,但我最感兴趣的是IE为什么要下载asp页面而FF提供正确的下载。

2 个答案:

答案 0 :(得分:4)

&内的onclick=""应该被html编码为&amp;

如果fromdate包含斜杠,那么你也可能最安全地对其进行url编码(尽管你似乎与你的示例网址相矛盾)。

答案 1 :(得分:0)

可能有用的东西:Server.URLEncode

fromdate=<%=Server.URLEncode(fromdate)%>

但是,您的Excel文件错误 - 项目在与所请求的名称或序号相对应的集合中找不到。 - 来自 Recordset.Fields() 。您正试图获取一个不可用的字段 - 您的查询中不存在的列名称或超出列数的索引。