2011-08-15 3 views
0

Я следил за следующей ссылкой и реализовал пример для моего собственного скрипта.Передача vars в javascript/jquery

Preview an image before it is uploaded

У меня есть 8 входов закачивать файл сопровождаемых IMG тегом его собственного

<input type="file" name="file[]" accept="image/gif,image/jpeg" onchange="readURL(this,1);"/> 
<img id="imagediv1" src="#" alt="your image" /> 

Сейчас на JavaScript я модифицированного

function readURL(input,cnum) { 
     if (input.files && input.files[0]) { 
      var reader = new FileReader(); 
      var cimage = 'imagediv'+cnum; 
      reader.onload = function (e) { 
       $("#cimage") 
        .attr('src', e.target.result) 
        .width(150) 
        .height(200); 
      }; 

      reader.readAsDataURL(input.files[0]); 
    }  } 
} 

Я сделал предупреждение(); в javascript и cimage var создается правильно. Однако img не изменяется, как в примере. Я попытался вручную создать функцию для каждого imagediv #, и он отлично работает.

Я что-то упустил в javascript?

ответ

1

Вы должны принять «CImage» из цитат и вместо того, чтобы сцепить его «#»:

$("#"+cimage) 

Или, еще лучше, не заморачиваться с созданием переменной cimage на всех и просто сделать это:

$("#imagediv" + cnum) 
0

Изменить ваш селектор:

$("#" + cimage).attr("src", e.target.result).width(150).height(200); 

Ваш селектор $("#cimage") ищет элемент с id="cimage".

+1

Кто отказался и по какой причине? –

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