Javascript 从Ajax响应创建动态UI的方法?

Javascript 从Ajax响应创建动态UI的方法?,javascript,ajax,Javascript,Ajax,使用Ajax的常见场景是解析响应并为最终用户创建用户界面。对于Ajax和UI这个词,我还是个新手,我只看到了两种使用Ajax(JSON/XML)响应创建UI的选择 CreateElement()继续动态添加/删除元素 创建大字符串并设置某个元素的innerHTML 现在我有以下问题: 如果有更好的选择,请告诉我 如果我想将事件附加到动态创建的元素,那么更好的方法是什么?我的意思是,在很多情况下,我最终会做类似的事情 我真的感觉很糟糕,这确实会引起问题和头痛。尝试使用现有的Javascript

使用Ajax的常见场景是解析响应并为最终用户创建用户界面。对于Ajax和UI这个词,我还是个新手,我只看到了两种使用Ajax(JSON/XML)响应创建UI的选择

  • CreateElement()继续动态添加/删除元素
  • 创建大字符串并设置某个元素的innerHTML
  • 现在我有以下问题:

  • 如果有更好的选择,请告诉我
  • 如果我想将事件附加到动态创建的元素,那么更好的方法是什么?我的意思是,在很多情况下,我最终会做类似的事情


  • 我真的感觉很糟糕,这确实会引起问题和头痛。

    尝试使用现有的Javascript UI框架,如YUI、JQuery甚至GWT。 在XHR请求的情况下,这将为您提供真正好的选择和灵活性。
    另外,了解UI框架中的事件管理可能对您有好处——一旦您有了这个想法,您也可以在没有这些框架的情况下使用它——在google中查看HTML中的事件

    我看不出这两种方法有任何错误。但是,从性能角度来看,设置innerHTML更好。 在某些情况下,动态创建元素是唯一的选择,您可能希望查看documentFragment以避免大量回流(同样是出于性能原因)


    ECMA指定addEventListener将侦听器动态添加到元素中。您可能还想了解事件冒泡。

    不,不,我一直在使用YUI,但仍然要根据用户响应动态创建UI,这是我主要关心的问题。我的主要目的是想知道万一有更好的选择。。。显然是在JavaScript/DOM/HTML级别。我相信图书馆也是这样做的。