2014-12-08 4 views
0

내가 작업중인 프로젝트에 appendChild 함수를 사용하고 있습니다..appendChild 함수의 대체

이 기능은 jQuery UI 탭에서 사용되지만 탭을 클릭 할 때마다 탭 안의 내용이 복제됩니다.

저는 콘텐츠가 복제되기를 원치 않으며 문제를 해결하기 위해 모든 노력을 기울였습니다.

누군가 도와 드릴 수 있기를 바랍니다.

감사합니다.

jQuery를

function loadXMLDocTues() 
    { 
    xml = loadXMLDoc("./xml/tuesday.xml"); 
    xsl = loadXMLDoc("./xml/tv_guide.xsl"); 
    // code for IE 
    if (window.ActiveXObject || xhttp.responseType == "msxml-document") 
     { 
     ex = xml.transformNode(xsl); 
     document.getElementById("tabs-2").innerHTML = ex; 
     } 
    // code for Chrome, Firefox, Opera, etc. 
    else if (document.implementation && document.implementation.createDocument) 
     { 
     xsltProcessor = new XSLTProcessor(); 
     xsltProcessor.importStylesheet(xsl); 
     resultDocument = xsltProcessor.transformToFragment(xml, document); 
     document.getElementById("tabs-2").appendChild(resultDocument); 
     } 
    } 

HTML

  <div id="tabs"> 
       <ul> 
        <li><a href="#tabs-1" onclick="loadXMLDocMon()">Monday</a></li> 
        <li><a href="#tabs-2" onclick="loadXMLDocTues()">Tuesday</a></li> 
        <li><a href="#tabs-3" onclick="loadXMLDocWed()">Wednesday</a></li> 
        <li><a href="#tabs-4" onclick="loadXMLDocThurs()">Thursday</a></li> 
        <li><a href="#tabs-5" onclick="loadXMLDocFri()">Friday</a></li> 
        <li><a href="#tabs-6" onclick="loadXMLDocSat()">Saturday</a></li> 
        <li><a href="#tabs-7" onclick="loadXMLDocSun()">Sunday</a></li> 
       </ul> 

       <div id="tabs-1"> 
       </div> 
       <!--CLOSING TABS-1 DIV--> 

       <div id="tabs-2"> 
       </div> 
       <!--CLOSING TABS-2 DIV--> 

       <div id="tabs-3"> 
       </div> 
       <!--CLOSING TABS-3 DIV--> 

       <div id="tabs-4"> 
       </div> 
       <!--CLOSING TABS-4 DIV--> 

       <div id="tabs-5"> 
       </div> 
       <!--CLOSING TABS-5 DIV--> 

       <div id="tabs-6"> 
       </div> 
       <!--CLOSING TABS-6 DIV--> 

       <div id="tabs-7"> 
       </div> 
       <!--CLOSING TABS-7 DIV--> 
      </div> 

답변

0

에 appendChild는 이름이 암시하고 추가 정확히 않습니다. 교체하려는 경우 IE 고유 코드로 판단한 다음 innerHTML을 사용해야합니다.

document.getElementById ("tabs-2"). innerHTML = resultDocument; 아직 더 나은

, 당신이 jQuery를 사용하고 있기 때문에이 작업을 수행 할 수 있습니다

$ ("# 탭-2") HTML (resultDocument을).

+0

안녕하세요, 저에게 다시 연락해 주셔서 감사합니다. 완전히 새로운 것에 대한 모든 것이었고 위의 코드에 대한 자습서를 따랐습니다. 나는 당신의 제안을 시도했다. 그러나 내가 그것을 바꿀 때 탭의 내용은 사라진다. – LM123

+0

html을 게시 할 수 있습니까? – Born2Code

+0

방금 ​​추가했습니다. 시간 내 주셔서 감사합니다. – LM123

0

IE 조건에 innerHTML을 사용하고 있습니다. Chrome/Firefox/Opera 조건에서 사용하지 않는 이유가 있습니까?

document.getElementById("tabs-2").innerHTML = resultDocument; 
+0

안녕하세요, 저에게 다시 연락해 주셔서 감사합니다. 완전히 새로운 것에 대한 모든 것이었고 위의 코드에 대한 자습서를 따랐습니다. 나는 당신의 제안을 시도했다. 그러나 내가 그것을 바꿀 때 탭의 내용은 사라진다. – LM123