jquery로 html 문자열 구문 분석
Ajax로드 된 소스의 HTML 문자열이 있습니다. HTML을 문서에 넣기 전에이 문자열의 개체 (이미지)에서 일부 속성을 얻고 싶습니다.
다음과 같은 것이 있습니다.
$.ajax({
url: uri+'?js',
success: function(data) {
var htmlCode = $(data).html();
$('#otherObject').html(data);
}
});
src
이 HTML 문자열에서 어떻게 속성 ( 예 :)을 얻을 수 있습니까?
100 % 확실하지는 않지만 그렇지 않습니다.
$(data)
어디에도 연결되지 않은 해당 데이터에 대한 DOM이있는 jquery 객체를 생성합니까? 또는 이미 DOM으로 구문 분석 된 경우 $ ( "# myImg", data) 또는 필요에 맞는 선택기로 이동할 수 있습니다.
편집
질문을 다시 읽으면 '데이터'가 이미 DOM 인 것으로 보입니다. 즉, 그냥 갈 수 있습니다 (DOM에 img 만 있다고 가정하면 더 정확한 선택기가 필요함).
$("img", data).attr ("src")
src-attribute에 액세스하려는 경우. 데이터가 텍스트 인 경우에는 아마도 작동 할 것입니다.
$("img", $(data)).attr ("src")
MarvinS.-
시험:
$.ajax({
url: uri+'?js',
success: function(data) {
var imgAttr = $("img", data).attr('src');
var htmlCode = $(data).html();
$('#imgSrc').html(imgAttr);
$('#fullHtmlOutput').html(htmlCode);
}
});
이것은 데이터의 전체 html 블록을 #fullHtmlOutput으로로드하고 이미지의 src를 #imgSrc로로드해야합니다.
img 요소에 컨테이너 요소를 추가하여 첫 번째 요소가 아닌지 확인하십시오.
한 가지 주목할 점-오늘 정확히이 문제가 있었기 때문에 HTML에 따라 jQuery가 잘 분석 할 수도 있고 그렇지 않을 수도 있습니다. jQuery는 내 HTML을 올바른 DOM으로 구문 분석하지 않습니다. 더 작은 XML 호환 파일에서는 제대로 작동했지만 내가 가지고있는 HTML (페이지에서 렌더링)은 Ajax 콜백으로 다시 전달 될 때 구문 분석하지 않습니다.
결국 나는 원하는 태그를 문자열에서 수동으로 검색했지만 이상적이지는 않았지만 작동했습니다.
참고 URL : https://stackoverflow.com/questions/704679/parse-html-string-with-jquery
'Program Tip' 카테고리의 다른 글
Jenkins의 다중 분기 파이프 라인으로 "주기적으로 구축" (0) | 2020.12.04 |
---|---|
TcpListener를 중지하는 올바른 방법 (0) | 2020.12.04 |
ADO.NET | DataDirectory | (0) | 2020.12.04 |
Coq와 같은 비 튜링 완전한 언어의 실질적인 한계는 무엇입니까? (0) | 2020.12.04 |
중첩 된 셸을 실행 중인지 어떻게 알 수 있습니까? (0) | 2020.12.04 |