0
我試圖動態生成一個vCal文件使用Javascript和一切工作正常,直到我嘗試在IE8。在IE8中,瀏覽器嘗試在請求欄中打開日曆文件而不是下載。這是我使用Internet Explorer 8和vCalendar/ICS文件
var iCal =
"BEGIN:VCALENDAR\n" +
"PRODID:-//Microsoft Corporation//Outlook 14.0 MIMEDIR//EN\n" +
"METHOD:PUBLISH\n" +
"BEGIN:VEVENT\n" +
"ATTENDEE;CN=\""+locationAlias+"\";CUTYPE=RESOURCE;ROLE=NON-PARTICIPANT;RSVP=TRUE:mailto:"+locationEmail+"\n" +
"DTEND;TZID=\"GMT Standard Time\":"+dend+"\n" +
"DTSTART;TZID=\"GMT Standard Time\":"+dstart+"\n" +
"LOCATION:"+locationName+"\n" +
"ORGANIZER;CN=\"<someuser>\":mailto:<somemailto>\n" +
"END:VEVENT\n" +
"END:VCALENDAR";
返回iCal中代碼的樣品;
然後我嘗試使用以下方法打開日曆文件;
window.open("data:text/calendar;charset=utf8," + escape(iCal));
有關爲什麼IE8無法識別文件的任何建議?
這並不回答他的問題。他想在javascript中生成這個。 – msponagle
是的,但IE瀏覽器在動態生成時無法識別OFT文件,因此需要通過服務器端邏輯來完成。我沒有包含邏輯在JavaScript中執行此操作,因爲該方法目前不是一個完整的解決方案..... – cduggan
也包含上面的代碼可用於所有其他瀏覽器 – cduggan