Для простоты у меня есть следующий файл с именем test.jsp:
<script language="javascript">
alert("a$b".replace(/\$/g,"k"));
</script>
Я поместил этот файл на свой локальный сервер, затем отобразил его, используя firefox: http://localhost:8080/myproj/test.jsp. Он работает нормально, строка с предупреждением о результате выглядит так:
akb
Но когда я помещаю этот файл на удаленный сервер и использую тот же Firefox для отображения, он выдает: $ bk, что для меня неверно.
Затем я изменяю содержимое test.jsp на:
<script language="javascript">
alert("a$b".replace(/\\$/g,"k"));
</script>
Обратите внимание, здесь я добавляю две косые черты вместо одной. В этом случае он работает на удаленном сервере, но не на локальном.
Затем я переименовываю файл из test.jsp в test.html, но содержимое совпадает с моим первым случаем, т. Е .:
<script language="javascript">
alert("a$b".replace(/\$/g,"k"));
</script>
Используя тот же Firefox, он работает нормально на обоих серверах.
Но мой файл должен встраивать JavaScript в файл JSP. не разрешается использовать суффикс .html для моего файла. Что я должен сделать, чтобы написать переносимый JavaScript в этом сценарии?
Мой локальный сервер использует tomcat-5.5.26; удаленный сервер использует tomcat-5.0.28. Версия Firefox - 3.0.4.