У меня есть функция javascript, которая создает фрагмент URI, используя некоторые захваченные параметры, а затем отправляет мою форму.
Пример:
function consultResource(contextName){
var form = document.forms[0];
var f1 = form.thename.value;//accepts strings without special symbols
var f2 = escape(form.thedate.value); //accepts only strings in the form 'dd/mm/yyyy'
var action = "/"+contextName+"/CtrlComparison?name="+f1+"&date="+f2;
form.action = action;
form.submit();
}
Пример сгенерированного фрагмента URI:/MyContext/CtrlComparison?name=report01&date=06/05/2011
Этот фрагмент работает, отправляя форму и принося PDF-документ в порядке для:
- Firefox 3.x-4.x (не тестировался на 2.x)
- Internet Explorer 6-8
- Google Chrome 9.x-11.x (другие версии не тестировались)
- Opera 10.x-11.x (другие версии не тестировались)
Но мне нужно, чтобы он работал и в Internet Explorer 9. В настоящее время, когда я отправляю ту же информацию в IE9, я получаю следующее сообщение:
вместо чего-то вроде этого:
IE9 не экранирует / и не принимает их как часть разделителей путей в URI.
Возникает вопрос: Как сделать, чтобы мой фрагмент URI правильно генерировался и в IE9?
Заранее спасибо.