Ошибка JavaScript ... Я думаю,

Я пытался исправить это в течение двух часов подряд, и я не могу понять это.

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

Эта строка кода находится в атрибуте <input type = "button" />. Кнопка ссылается на страницу, где должна быть запущена загрузка Excel. Значения в URL являются частями from и to-date. (год месяц день)

это:

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 предлагает скачать файл Excel, но дает (в этом файле Excel) обзор html-страницы с сообщением об ошибке, сообщающим, что мой запрос неверен (элемент не может быть найден в коллекции, соответствующей запрошенному имени или порядковому номеру.) Но это НЕ МОЖЕТ быть, я использую тот же запрос в другом месте, используя то же (но перезапущенное) соединение.

Это фрагмент кода, который я использую для создания экземпляра загрузки файла:

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

Возможно, что-то и происходит, но меня больше всего интересует, почему IE хочет загрузить страницу asp, а FF предлагает правильную загрузку.

11.12.2008 09:48:08
2 ОТВЕТА
РЕШЕНИЕ

Что-то, что может помочь: Server.URLEncode

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

Но ошибка в файле Excel: элемент не найден в коллекции, соответствующей запрошенному имени или порядковому номеру. - это от Recordset.Fields(). Вы пытаетесь получить поле, которое недоступно - либо имя столбца, которого нет в вашем запросе, либо индекс, который превышает количество столбцов.

0
11.12.2008 10:03:53
Да, ты прав. В конце концов, запрос был неверным. Мой плохой ... :( Я думаю, что я буду использовать URLencode, хотя вопрос решен, он наверняка уменьшит URL. Спасибо!
Kablam 11.12.2008 10:19:32

&Внутри onclick=""должна быть HTML-закодированы&amp;

Если fromdate содержит косые черты, вы, вероятно, безопаснее всего также кодировать URL (хотя вы, кажется, противоречите этому с примером URL).

4
11.12.2008 09:59:50
Это работает сейчас ... SQLquery был неправильным в конце концов. Я заменим & на & amp; но, тем не менее, чтобы убедиться. Спасибо!
Kablam 11.12.2008 10:16:58