을 받는 방법 XML IE8 에서 가 mootools 의
-
05-07-2019 - |
문제
내가 하고 있는 웹 내가 크게 AJAX 를 사용하여 요청 XML 서비스입니다.사실,내 웹드로이드와 거 서버는 어떠한 사용 AJAX 를 통신 back-end.
모든 것이 좋은 것(나 개발하고 테스트 우분투에서 9.04 고 Firefox3.0 으로 브라우저).하루는 내가 결정하는 방법을 볼 웹았다 IE8 에서...적한 환경에서 즐길 수 있습니다.
아무것도 일하고 있었으로 신기했합니다.더 특정,Request.HTML 아 작동되지 않았습니다.내가 말했듯이,내 웹에 크게 의존하는,그래서 아무 일 없습니다.
나는 하루를 보냈가 무엇인가를 얻기 위해 노력하고 실행하는 그러나 내가 운이 없었..만 결론을 내가 도착했는 XML 였 잘못 분석 (나서 실수).Let's get 코드:
var req = new Request.HTML({
url: 'service/Catalog.groovy',
onSuccess: function(responseTree, responseElements) {
var catz = responseElements.filter('category');
catz.each(function(cat){
// cat = $(cat);
var cat_id = cat.get('id');
var subcategory = cat.getElement('subcategory');
alert(cat_id);
alert(cat.get('html'));
alert(subcategory.get('html'));
}
},
onFailure: function(){...}
});
예를 들어,그 한 조각의 코드입니다.Firefox 에서 그것을 완벽하게 작동했습니다.그것은 경고는 ID(예를 들어,7), 그 다음은 보 콘텐츠 범주의 요소 예를 들어:
<subcategory id='1'>
<category_id>7</category_id>
<code>ACTIO</code>
<name>Action</name>
</subcategory>
다음을 나타냈다는 내용의 내부 요소,이 경우:
<category_id>7</category_id>
<code>ACTIO</code>
<name>Action</name>
IE8 에서 첫 번째 경고인(알 7) 그러나 다음 경고(alert(고양이입니다.get('html'));)준 빈 문자열 그리고 마지막 예외가 발생했습니다....그것은 말에 대해 뭔가를 하위 범주 보기 바람 null 입니다.
내가 결론으로 이 모든 것은 요소 분석 르 Firefox 에서하지만,IE8 에서 나만을 가지고 태그와 속성 확인 다른 모든 것 완전히 잘못(사실,누락).I mean,안 콘텐츠 모든 응답 요소가 간다!
다른 사실을 사용할 수 있:이 코드:
alert(cat.get('tag')); resulted in
Firefox: category
IE8: /category <-----------(?)
hmm 다른 무엇...그래...라인 당신이 볼 수석상(cat = $(cat);
다)
가
하려 했습니다.내가 읽 mootools 의 문서는 필요한 즉
을 명시적으로 호출
이 $
함수에서 요소를 모든 요소는 마법...하지만 이
지 않는다.
내가 이렇게 절망...나는 심지어 바이올린과 주변 mootools.js
코드
OK,so...내가 원하는 것,사랑하는 mootool-프로 이를 해결하는 데 도움이 이 문제 내가 정말 필요한 웹 기능 IE8 에서,그리고 사실 나는 선택 mootools 의을 잊 호환성 문제에 대...
ps:뭔가가 분명하지 않다,하십시오!내가 어떤 도움을 평가:D
해결책
나는 유사한 문제는 다음과 같이 언젠가 사용 전에 jQuery.문제는 IE 에서 들어오는 반응하는 데 필요한 데이터를 처리할 Microsoft.XMLDOM
ActiveX 개체입니다.
일반적인 단계는 다음과 같습니다면:
인스턴스화 ActiveX 개체입니다.
var oXmlDoc = new ActiveXObject("Microsoft.XMLDOM");
그것을 전달 들어오는 반응 데이터와 로드합니다.
oXmlDoc.loadXML(sXmlResponseData);
분석으로 필요합니다.
을 확인할 수 있습도 기.