2012-06-08 4 views
0

Я пытаюсь получить атрибут src изображения, которое было добавлено на страницу после его загрузки, но результат продолжает возвращаться undefined.Получить атрибут только что созданного элемента

$('#qtr').change(function() { 
    data = { 
     'img': $('#edit_image').attr('src'), 
     'degrees': '90' 
    }; 
    $.post('/ajax/ajax_images/rotate', data, function(response) { 
     if (response.error != 0) { 
      alert('Unable to rotate image'); 
     } 
     else { 
      $('#edit_image').attr('src', response.html); 
      new_image = response.html; 
      var start = new_image.lastIndexOf('/') + 1; 
      new_image = new_image.substr(start); 
     } 
    }, 'json'); 
});​ 

$('#edit_image') - это созданный образ. Где я иду не так?

+2

Покажите нам свой ответ Ajax. – VisioN

+0

Это означает, что изображение еще не загружено. Поскольку вы добавляете его с помощью dyanmically, вы должны выполнить любой процесс в функции 'img.onload'. – gopi1410

ответ

1

Проблема заключается в том, как только DOM загружен любые изменения в вашем DOM, JQuery должна быть явно сказано об изменениях. Поэтому используйте функцию обратного вызова в .bind() или .live() в зависимости от вашей версии jquery.

0

Try:

$('img:last').attr('src') 

;-)

+0

в вашем случае, чтобы установить новый .src -> ** $ ('img: last') .attr ('src', 'newSrc') ** – ZEE

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