Javascript 我们可以将AJAX与XHTML结合使用吗?

Javascript 我们可以将AJAX与XHTML结合使用吗?,javascript,ajax,xhtml,Javascript,Ajax,Xhtml,我们可以使用AJAX更新XHTML页面吗? 要连接html页面,我们通常会编写: xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ document.getElementById("target").innerHTML=xhr.responseText; } } 但是,我们不能将innerHTML更改为innerXHTML,因为AJAX不接受它。是的,

我们可以使用AJAX更新XHTML页面吗? 要连接html页面,我们通常会编写:

   xhr.onreadystatechange = function(){
        if(xhr.readyState == 4){
            document.getElementById("target").innerHTML=xhr.responseText;
        }
    }

但是,我们不能将
innerHTML
更改为
innerXHTML
,因为AJAX不接受它。

是的,您可以使用AJAX更新XHTML页面。您仍然使用
innerHTML
(或DOM方法)。HTML5规范中的描述描述了应如何处理XML与HTML

关于各种DOM方法,一些阅读/参考资料:

  • (这也适用于XHTML文档)

  • 是的,您可以使用ajax更新XHTML页面。您仍然使用
    innerHTML
    (或DOM方法)。HTML5规范中的描述描述了应如何处理XML与HTML

    关于各种DOM方法,一些阅读/参考资料:

    • (这也适用于XHTML文档)
      • 我的第一个想法是“当然!”。正如T.J.Crowder指出的,符合标准的浏览器应该没有问题

        然而,似乎有人在谈论使用innerHTML和在旧版IE中维护格式良好的XHTML标记的一些问题

        请记住,这是旧信息。这可能不再是个问题。

        (使用innerHTML)

        我的经验正好相反,即使用
        innerHTML
        插入标记不是问题

        AJAX部分在这里真的不相关;问题是是否可以信任
        innerHTML
        来保持插入文档的标记的完整性。

        我的第一个想法是“当然!”。正如T.J.Crowder指出的,符合标准的浏览器应该没有问题

        然而,似乎有人在谈论使用innerHTML和在旧版IE中维护格式良好的XHTML标记的一些问题

        请记住,这是旧信息。这可能不再是个问题。

        (使用innerHTML)

        我的经验正好相反,即使用
        innerHTML
        插入标记不是问题


        AJAX部分在这里真的不相关;问题是是否可以信任
        innerHTML
        ,以保持插入文档的标记的完整性。

        我的个人资料中链接的站点完全作为XHTML,作为实际的XHTML、应用程序/XHTML+xml。在示例中,单击右上角的“站点选项”将通过AJAX加载内容

        • 代码不是文本,请不要使用responseText,请使用responseXML
        • 永远不要使用innerHTML,它是一种专有的Microsoft JScript方法,与DOM不兼容。使用它会给代码增加大量的模糊性,JavaScript可能会看到通过AJAX加载的元素,但可能不会
        • 使用importNode正如我所说,这是两个不同的文档所有者,您必须使用importNode从不同的文档加载内容

        我的个人资料中链接的我的站点完全作为XHTML服务,作为实际的XHTML,application/XHTML+xml。在示例中,单击右上角的“站点选项”将通过AJAX加载内容

        • 代码不是文本,请不要使用responseText,请使用responseXML
        • 永远不要使用innerHTML,它是一种专有的Microsoft JScript方法,与DOM不兼容。使用它会给代码增加大量的模糊性,JavaScript可能会看到通过AJAX加载的元素,但可能不会
        • 使用importNode正如我所说,这是两个不同的文档所有者,您必须使用importNode从不同的文档加载内容

        XHTML仍然是
        HTML;它只是围绕HTML应该如何呈现和编写强加了一组额外的规则。无论您编写的是html还是XHTML,innerHTML[或jQuery的html()]仍然适用。我把
        仍然
        放在引号里,因为你可能希望在这里读到更多关于这个主题的内容:它们是一样的!XHTML仍然是
        HTML;它只是围绕HTML应该如何呈现和编写强加了一组额外的规则。无论您编写的是html还是XHTML,innerHTML[或jQuery的html()]仍然适用。我把
        仍然
        放在引号里,因为你可能希望在这里读到更多关于这个主题的内容:它们是一样的!永远不要使用innerHTML,它是一种专有的Microsoft JScript方法,与DOM不兼容。@John:
        innerHTML
        在所有主要(可能包括所有次要)浏览器中都受支持,与DOM兼容,并包含在中。与Ajax以及在同一DOM元素上为同一事件提供多个事件处理程序的功能一样,它最初是Microsoft的一项创新。(曾经有一段时间,微软是网络浏览器的创新者。那是很久以前的事了,时间虽然短暂,但却多产。)这并不意味着它是邪恶的,也不意味着你不应该使用它。我相信排名前100万的网站中有80%以上是这样的。我不想和你争论,它不可靠,它不是一个标准(即使它在任何标准机构中都有强大的武装,因为它们都是由公司主导的),它与应用程序级编程不兼容。懒惰的代码将产生低于标准的结果,句号。@John:对不起,我不会夸张。:-)如果你真的想支持你所说的话,那太好了,我很乐意听到。其他任何东西都只是噪音——误导性噪音。@John:唉,是的,是的,请看(我的第四颗子弹),其中包括作为规范性包含。同样地,
        innerHTML
        已经被所有主要和次要浏览器支持至少十年了。没有实现它的浏览器几乎是无用的。你可以一直称它为专有的。不会改变现实。永远不要使用innerHTML,它是一种专有的Microsoft JScript方法,与DOM不兼容。@John:
        innerHTML
        在所有主要(可能包括所有次要)浏览器中都受支持,与