2014-08-29 2 views
0

jQuery를 사용하여 클래스의 특정 텍스트가있는 td를 찾고 img src를 바꿀 수 있습니까? 여기클래스 특정 단어가있는 경우 img src를 td img로 바꿉니다.

<td> 
<img src="REPLACE IMG SOURCE WITH NEW IMAGE" class="headshot"></img> 
<a href="#" class="position_def">Rams, St. Louis STL Def</a> 
</td> 

<td> 
<img src="REPLACE IMG SOURCE WITH NEW IMAGE" class="headshot"> 
<a href="#" class="position_def">Bengals, Cincinnati CIN Def</a> 
</td> 

내가, TD a를 찾아 "램"의 클래스에 텍스트를 찾아 그 것이다 새로운 IMG 교체, 또한 "벵갈"를 발견하고 너무 그 IMG의 SRC를 대체하고자하는 HTML입니다 또 다른 다른 이미지는 "램"에 대한 하나

나는이 시도하지만

(function($) { 
    var name = 'Rams'; 
    $('#divID').find('td').filter(function() { return $(this).text() == name; }).html('<img src="MY NEW IMG" "class="detailsimg"/>'); 
})(jQuery); 
+0

어느 부분을 어떻게 알지는 못합니까? 시도해 봤어? 또한 클래스가 아닌 요소에서 텍스트를 찾고 싶습니다. –

+0

나는 td를 찾을 수 있지만 내 시도는 이미지의 src가 아닌 전체 td를 대체합니다. – MShack

답변

2

귀하의 코드는 텍스트로 td을 찾는 이미지로 전체 TD를 대체하지만, 당신은, .html()를 사용하는 발견 된 주소는입니다.3210. 당신이 td를 찾으면, 당신은 src 속성 변경 후 img 태그를 필터링하고 싶은 : 사용 ==은 일반적으로 사실로 인해, 작동하지 않습니다,

var name = 'Rams'; 
$('#divID').find('td').filter(function() { 
    return $(this).text().match(name); 
}).children('img').attr('src', "MY NEW IMG"); 

참고 그 text() 반환의 모든 공백은 td 태그에 있습니다. .match() 또는 다른 일치/정규식 함수가 훨씬 더 안정적으로 작동합니다.

데모 : http://jsfiddle.net/jtbowden/1crbvr59/

+0

각 클래스의 특정 텍스트는 여기에 있습니다. 그리고 img 태그는 태그를 감싸지 않기 때문에 작동할까요? – MShack

+0

죄송합니다, 오타, 나는'a'가 아니라'img'를 의미했습니다. 편집을 참조하십시오. –

+0

jsfiddle을 설정하고 작동하지 않습니다. http://jsfiddle.net/nbxa0L2a/1/ – MShack

관련 문제