2013-07-04 16 views
-1

У меня есть такой код:Как добиться следующего результата в Javascript?

var exist_file = document.getElementById('exist_file').value; 
     document.getElementById('dialog-confirm-upload').innerHTML= 

      "The file" + 
      for (var i=0;i<exist_file.length;i++){ 
       exist_file + "," 
      } 

      + 
      "has been already transferred? Do you want to overwrite?" 

exist_file представляет собой массив, который содержит один или более чем один элемент: [ «Привет», «ОК»]. Я хочу передать значение innerHTML вот так. "The file hello, ok has been already transferred? Do you want to overwrite?" Я пробовал следующий код, но, оказывается, это недействительный синтаксис. Как я могу это достичь?

+0

Похоже, что 'exist_file' является строкой, а не массивом. – Teemu

+0

Я немного смущен, потому что вы говорите, что exist_file - это массив, подобный '['hello', 'ok']', но в вашем примере кода вы фактически получаете его как значение входного элемента. Что он? откуда он? – jcsanyi

ответ

0

Сначала вы должны разобрать строку в массив, то вы можете отформатировать его с запятыми:

var exist_file = document.getElementById('exist_file').value; 
document.getElementById('dialog-confirm-upload').innerHTML= 
    "The file " + 
    exist_file.substr(3, exist_file.length - 5).split("', u'").join(", ") + 
    " has already been transferred. Do you want to overwrite?" 

Примечание: Это самая основная форма анализа. Он работает со строками, содержащими регулярные символы, но экранированные символы не освобождаются.

+0

Спасибо. Это то, чего я хотел. – user2545177

0
var exist_file = document.getElementById('exist_file').value, 
    msg = "The file" + exist_file.toString() + "has been already transferred? Do you want to overwrite?"; 
    document.getElementById('dialog-confirm-upload').innerHTML= msg; 

Этот фрагмент работает в обоих случаях, где exist_file - это массив или строка.

+0

Он делает. Поскольку это массив из python, это строка для javascript. Ваш код работает нормально, но вместо того, чтобы показывать это [u'init.py], я хочу показать пользователю только init.py. Кроме того, если есть несколько файлов, я хочу запятую, например: __init__.py, привет – user2545177

Смежные вопросы