.appendChild函数的替代方法

时间:2014-12-08 02:46:48

标签: jquery

我正在为我正在处理的项目使用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>

2 个答案:

答案 0 :(得分:0)

appendChild完全按照名称暗示并追加。 如果你想要替换,这是你想要通过IE特定代码判断,那么你需要使用innerHTML

的document.getElementById(&#34;凸片-2&#34)。innerHTML的= resultDocument;

更好,因为你使用的是jQuery,你可以这样做:

$(&#34;#翼片-2&#34)的HTML(resultDocument);

答案 1 :(得分:0)

您正在使用innerHTML作为IE条件,是否有理由不将其用于Chrome / Firefox / Opera条件?

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