Открыть текущую страницу в новом окне, включая строку запроса - PullRequest
1 голос
/ 22 апреля 2010

Вот так: У меня есть приложение, которое выполняет некоторую обработку, записывает некоторые файлы результатов и затем отображает результаты во встроенном элементе управления браузера IE. Это делается путем перемещения элемента управления браузера в локальный файл HTML вместе со строкой запроса, содержащей сгенерированные файлы результатов, чтобы отобразить все это. Цель ссылки будет выглядеть примерно так:

c:\SomeFolder\results.htm?results=file%201.xml;file%202.xml;file%203.xml

Пока все хорошо. Тем не менее, на странице HTML есть ссылка, которая, как предполагается, открывается точно так же просто в обычном окне браузера.

Я думал, что это сработает:

<a href="#" target="_blank">Show in browser</a>

Поскольку это ссылка на странице HTML, отображаемой в элементе управления IE, ссылка будет открываться в IE независимо от того, каким может быть браузер по умолчанию. Это работает для IE7 и 8, но не для IE6. В IE6 строка запроса обрезается и открывается браузер file://c:/results/results.htm# без строки запроса.

Я уверен, что должен быть гораздо лучший способ сделать это без #, который бы работал во всех IE.

Как бы профессионалы решили это?

Ответы [ 2 ]

1 голос
/ 22 апреля 2010

Это должно работать:

<a href="javascript://;" onclick="this.href=document.location" target="_blank">Show in browser</a>
0 голосов
/ 22 апреля 2010

Я бы;

<a href="yourpage.html" target="_blank" onclick="return !window.open(location.href, this.target);">Show in browser</a>

('yourpage.html' в якоре предназначен для удовлетворения того факта, что якорь должен иметь href, он будет загружен только в случае сбоя window.open ())

...