Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.03.2010, 14:22
Новичок на форуме
Отправить личное сообщение для nedosalivan Посмотреть профиль Найти все сообщения от nedosalivan
 
Регистрация: 29.03.2010
Сообщений: 3

Как получить имя файла и изменить его?
Суть проблемы:
1) Нужно получить текущее имя файла (допустим index.htm)
2) Изменить это имя (например index_r.htm)
Помогите пожалуйста.
Сейчас имя файла я получаю так:
var pathname = location.pathname;
alert(pathname.match(/(?:^|\/|\\)([^\\\/]+)$/)[1]);
Ответить с цитированием
  #2 (permalink)  
Старый 29.03.2010, 14:32
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,234

если вы хотите изменить адрес в адресной строке браузера, то для этого используется объект window.location
но любое его изменение приводит к переходу на соответствующий адрес
то есть изменить адресную строку, оставшись при этом в том же документе невозможно.
ну, кроме как изменения хеша, разумеется, ибо он является частью документа

А если же вы хотите изменить имя файла, лежащего на сервере, то и делать это надо серверными силами
Ответить с цитированием
  #3 (permalink)  
Старый 29.03.2010, 14:39
Новичок на форуме
Отправить личное сообщение для nedosalivan Посмотреть профиль Найти все сообщения от nedosalivan
 
Регистрация: 29.03.2010
Сообщений: 3

не совсем так, мне нужно получить имя файла, изменить его и записать в переменную
Ответить с цитированием
  #4 (permalink)  
Старый 29.03.2010, 15:18
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,234

ну, получать его вы уже научились
меняйте с помощью регулярок.
Ответить с цитированием
  #5 (permalink)  
Старый 29.03.2010, 15:22
Новичок на форуме
Отправить личное сообщение для nedosalivan Посмотреть профиль Найти все сообщения от nedosalivan
 
Регистрация: 29.03.2010
Сообщений: 3

с регулярками очень слабо знаком, сделал через такое выражение
/(.*).htm/

только не знаю насколько правилен этот метод, но работает
Ответить с цитированием
  #6 (permalink)  
Старый 29.03.2010, 16:51
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Ваша регулярка сработает и для следующих значений:
/path/index.xhtml
/path/index.html
/path/index.phtml
/path/html.jpg

Лучше так:
/([^\\\/]*)\.htm$/i
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
О наследовании событий, или как корректно его отменить. JCShen Events/DOM/Window 8 08.02.2010 23:00
Как получить атрибут из CSS файла ? sionus Events/DOM/Window 1 04.01.2010 08:39
Как получить имя компа через JavaScript? Бурундук Общие вопросы Javascript 3 19.09.2009 15:44
Как изменить скрипт, что бы им его можно было использовать для нужной страницы Nick50_70 Общие вопросы Javascript 0 28.04.2009 22:30
Можно ли получить имя экземпляра объекта внутри самого объекта? Ichigeki Общие вопросы Javascript 9 14.11.2008 18:00