2013-11-13 3 views
0

Я ищу, чтобы заменить текст в таблице изображением. У меня будет три варианта текста: Сильный, средний, слабый. Это необходимо для определения приоритетности прочности кофейных изделий. Если текст говорит сильным, то я хочу заменить на «strong.png» и т. Д. Я получил это далеко, но теперь застрял в идеях. Нижеследующее не работает.Замена текста изображением с помощью JQuery

Мой код до сих пор:

$().ready(function() { 
    $('.data-table tr .data').each(function() { 
     string = $(this).text('Strong'); 
     $(this).html('<img src="strong.png" alt="' + string + '" />'); 
    }); 
}); 

</script> 

таблица разметки:

<table class="data-table" id="product-attribute-specs-table"> 
    <colgroup><col width="25%"> 
    <col> 
    </colgroup><tbody> 
     <tr class="even"> 
      <th class="label">Coffee Strength</th> 
      <td class="data last">Strong</td> 
     </tr> 
      </tbody> 
</table> 

Любая помощь будет оценена.

+0

К сожалению, это не работает, как это должно быть. В таблице будут другие атрибуты, для которых я НЕ хочу замены изображений для них - только для силы кофе. Таким образом, это должно работать только на словах «сильный, средний или слабый». –

ответ

0

Попробуйте

jQuery(function ($) { 
    $('.data-table tr .data').each(function() { 
     var string = $.trim($(this).text()); 
     $(this).html('<img src="' + string + '.png" alt="' + string + '" />'); 
    }); 
}); 

Demo: Fiddle

+0

Абсолютно совершенный. Ты звезда. Очень впечатлен тем, как вы это сделали. СПАСИБО!!!!!! –

+0

Извините, это не сработало. В таблице будут другие атрибуты, для которых я НЕ хочу замены изображений для них - только для силы кофе. Таким образом, это должно работать только на словах «сильный, средний или слабый». –

0
$('.data-table tr .data').html(function() { 
    var currentText = $(this).text().toLowerCase(); 
    return '<img src="' + currentText + '.png" alt="' + currentText + '" />'; 
}); 

DEMO: http://jsfiddle.net/jRELP/

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