2014-08-27 2 views
0

У меня есть изображение внутри ячейки таблицы, которая также является активной ссылкой со следующей разметкой:Javascript изменить источник изображения

<a class="modalInput" rel="#flagsSummary" style="cursor:pointer"> 
    <img src="/FatcaOne_0/static/images/circleRed.png" width="20" height="20"> 
</a> 

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

rows[lastRowClicked].cells[0].innerHTML = '<a class="modalInput" rel="#flagsSummary" style="cursor:pointer"><img src="/FatcaOne_0/static/images/circleYellow.png" width="20" height="20"></a>'; 

Я только хочу, чтобы изменить изображение в последней строке, которая была нажата.

ответ

3

Попробуйте что-то вроде этого:

var cell = rows[lastRowClicked].cells[0]; 
var allImagesInCell = cell.getElementsByTagName('img'); 
var theImage = allImagesInCell[0]; 

theImage.setAttribute('src', '/some/new/value'); 

Вы также можете использовать theImage = cell.querySelector('img'), если вам не нужна поддержка IE8 и ниже (см здесь https://developer.mozilla.org/en-US/docs/Web/API/document.querySelector#Browser_Compatibility).

3

Вы можете найти элемент изображения внутри ячейки таблицы и просто изменить свойство .src.

var cell = rows[lastRowClicked].cells[0]; 
cell.querySelector('img').src = 'some/other/image.jpg'; 
Смежные вопросы