установка innerHTML для всех браузеров в JavaScript - PullRequest
1 голос
/ 07 июня 2009

Я хочу загружать содержимое DIV динамически в javascript. Я использовал этот код

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

Это работает в IE. Но не в Firefox. Какая альтернатива этому, которая работает во всех браузерах?

Ответы [ 4 ]

8 голосов
/ 07 июня 2009

Попробуйте так:

var strHtml="<h3>Test</h3>";
$("#divPrice").html(strHtml);
5 голосов
/ 07 июня 2009

Я так понимаю, вы используете JavaScript Framework, основанный на $(). Глядя на ваши другие вопросы, похоже, что вы используете 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 );
        }
    }
5 голосов
/ 07 июня 2009

Похоже, вы используете jquery, поэтому вы можете использовать:

 var strHtml="<h3>Test</h3>";
 var div = $("#divPrice");  
 div.html(strHtml);
1 голос
/ 07 июня 2009

Я предполагаю, что вы используете чистый javascript, а не jquery.

var div = $ ("# divPrice");

должно быть

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

Другие в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...