【问题标题】:setting innerHTML for all browsers in javascript在javascript中为所有浏览器设置innerHTML
【发布时间】:2009-06-07 09:44:36
【问题描述】:

我想在 javascript 中动态加载 DIV 的内容。我使用了这段代码

 var strHtml="<h3>Test</h3>";
 var div = $("#divPrice");  
 div.innerHTML=strHtml

这适用于 IE。但不是在 firefox 中。在所有浏览器上都可以使用的替代方法是什么?

【问题讨论】:

  • 我很惊讶这在 IE 中有效......它当然不应该

标签: javascript jquery


【解决方案1】:

试试这个方法:

var strHtml="<h3>Test</h3>";
$("#divPrice").html(strHtml);

【讨论】:

    【解决方案2】:

    看起来你正在使用jquery,所以你可以使用:

     var strHtml="<h3>Test</h3>";
     var div = $("#divPrice");  
     div.html(strHtml);
    

    【讨论】:

      【解决方案3】:

      我认为您使用的是基于 $() 的 JavaScript 框架。查看您的其他问题,您似乎正在使用 jQuery,在这种情况下您可以这样做

      $("#divPrice").html(strHtml);
      

      仅供参考,jQuery 的html() 命令执行以下操作

          jQuery.fn = jQuery.prototype = {
              html: function( value ) {
                  return value === undefined ?
                      (this[0] ?
                          this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g, "") :
                          null) :
                      this.empty().append( value );
              }
          }
      

      【讨论】:

        【解决方案4】:

        我假设你使用纯 javascript,而不是 jquery。

        var div = $("#divPrice");

        应该是

        var div = document.getElementById("divPrice");

        其他都很好。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2020-06-06
          • 1970-01-01
          • 1970-01-01
          • 2011-10-19
          • 2011-06-05
          • 2017-07-09
          • 2016-07-06
          相关资源
          最近更新 更多