HTML не интерпретируется после функции .ajax в JQuery - PullRequest
0 голосов
/ 27 апреля 2010

Получив строку HTML с помощью функции $ .ajax, я поместил ее в div ... HTML - это простое сообщение с тегом <b>, но оно не интерпретируется браузером, я имею в виду, <b> не делает текст жирным.

Вот что я делаю:

$.ajax({
    url: 'index.php?ajax=ejecutar_configuracion&id_gadget=cubrimientos',
    cache: false,
    success: function(html){
        // html = '<b>hello</b> newton'
        $('#config_reporte').html(html).dialog({
            height: 300,
            width: 500,
            modal: true
        });
    }
});

Как видите, я записываю содержимое результата HTML в модальное диалоговое окно.

Кто-нибудь знает, почему это происходит? Это должно быть легко сделать ... но я не смог заставить его работать должным образом.

Большое спасибо.

Ответы [ 3 ]

0 голосов
/ 27 апреля 2010

Вы также можете попробовать установить html в качестве переменной, а затем вызвать переменную в поле типа данных.

dataToLoad: "&lt;b&gt; hello &lt;b&gt; newton";

$.ajax({
url: 'index.php?ajax=ejecutar_configuracion&id_gadget=cubrimientos',
cache: false,
datatype: dataToLoad,
success: function(html){
    // html = '<b>hello</b> newton'
    $('#config_reporte').html(html).dialog({
        height: 300,
        width: 500,
        modal: true
 });
}});
0 голосов
/ 27 апреля 2010

Ну ... я не смог заставить его работать должным образом только с HTML. Мне пришлось изменить чистый HTML и использовать CSS. Итак, я не использую <b>, но <span style="font-weight: bolder;">, и это хорошо работает.

Спасибо за чтение!

0 голосов
/ 27 апреля 2010

Я бы попытался добавить dataType: "html" к вашему параметру s, этот оператор может сделать число в логике интеллектуального угадывания, которую jQuery использует для определения типа возврата. Полная версия:

$.ajax({
    url: 'index.php?ajax=ejecutar_configuracion&id_gadget=cubrimientos',
    cache: false,
    dataType: "html",
    success: function(html){
        // html = '<b>hello</b> newton'
        $('#config_reporte').html(html).dialog({
            height: 300,
            width: 500,
            modal: true
        });
    }
});

Также убедитесь, что <b> не закодировано в источнике, где фактически возвращается &lt;b&gt; в вашей строке вместо <b>.

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