Как получить имя файла File Field в текстовое поле, используя Rails и Prototype - PullRequest
0 голосов
/ 08 октября 2009

Мне нужно знать, как извлечь имя файла поля файла в текстовое поле, используя Rails и Prototype

  1. Мне нужно загрузить любой файл, используя <%=file_field "text"%>

  2. Затем мне нужно получить имя файла в новом текстовом поле ниже

1 Ответ

2 голосов
/ 08 октября 2009

Файловые поля изолированы во всех современных браузерах, поэтому есть много вещей, которые вы не можете сделать, например, установить их значение. Вы можете получить значение, но вы получите только имя файла, а не полный путь к файлу.

Вот как вы можете сделать это с прототипом.

<script type="text/javascript" charset="utf-8">
  Event.observe(window, "load", function(){
    $$("button")[0].observe("click", function(){
      $$("input[type=text]")[0].value = $$("input[type=file]")[0].value
    })
  })
</script>

<input type="file" />
<input type="text" />
<button>Test</button>

Вот результаты, которые я получаю в различных браузерах на моем Mac:

  • Опера: c: \ fake_path [имя файла здесь]
  • Safari: [имя файла здесь]
  • Firefox: [имя файла здесь]
...