2016-09-25 4 views
1

에서 태그를 IMG에 클래스를 추가, 그래서 추출 HtmlAgility 팩을 사용했다 이미지 태그는 전체 HTML에서 가져온 것이지만 각 이미지 태그에 클래스를 추가하는 방법입니다. HTML에서동적으로 내가 <pre><code>class="img-thumbnail" </code></pre> <p></p> 모든 이미지 태그에 필요한 이미지가 반응하게 텍스트와 이미지를 추가하는 풍부한 편집기를 가지고 전체 HTML

입력 예상 이미지 태그를

<img src="http://domain.com/images/image1.jpg"> 

추출 후

<img src="http://domain.com/images/image1.jpg" class="img-thumbnail"> 

당신은 모든 이미지 태그에 속성을 추가 할 수 있습니다

public string ParseImage(string pHtml) 
    { 

     HtmlDocument doc = new HtmlDocument(); 
     doc.LoadHtml(pHtml); 
     var imgs = doc.DocumentNode.SelectNodes("//img"); 

     foreach (var item in imgs) 
     { 
      string orig = item.Attributes["src"].Value; 
      //Add class to each img tag. 
     } 
     } 
+0

왜 자바 스크립트로 이것을하지 않습니까? –

+0

호스팅 서버에서 지원하지 않으므로 자바 스크립트를 사용하십시오. – Dave

답변

1

나는 문제가 당신이 그것을 표시하기 전에 HTML을 저장해야 할 점이다 같아요. 그렇지 않으면 HTML 민첩성 팩은 때때로 변경된 속성을 생략합니다.

public string ParseImage(string pHtml) 
{ 

    HtmlDocument doc = new HtmlDocument(); 
    doc.LoadHtml(pHtml); 
    var imgs = doc.DocumentNode.SelectNodes("//img"); 

    foreach (var item in imgs) 
    { 
     //string orig = item.Attributes["src"].Value; 
     item.SetAttributeValue("class", "img-thumbnail"); 
     //Add class to each img tag. 
    } 
    using(StringWriter tw = new StringWriter()){ 
     doc.Save(tw); 
     return tw.ToString(); 
    } 
} 
+0

img 태그에 class = "img-thumbnail"을 추가하려면 어떻게해야합니까? TextWriter의 객체를 추상 클래스로 만들 수 없습니다. – Dave

+0

안녕하세요, 내 응답을 편집했습니다. 그냥 TextWriter를 StringWriter로 바꿉니다. –

+0

Ok. 하지만 점점 이 필요합니다 어떻게 img 태그에 클래스를 추가합니까? – Dave