Pergunta

jQuery.get(window.location.href, function(data) {
  alert(data);
  alert($(data).html());
});

O primeiro pop-up é tudo de bom HTML e saudável.

O segundo pop-up está em branco. Por quê? (O HTML é compatível com XHTML)

Foi útil?

Solução

A partir da documentação :

A seqüência de HTML não pode conter elementos que são inválidos dentro de um div, como html, cabeça, corpo, ou elementos do título.

Se você está buscando um documento HTML completo, então você terá muitos elementos que podem não aparecer em um div.

Outras dicas

Porque ele irá retornar uma string com todo o HTML. data não é um objeto jQuery.

Eu tentei isso no meu PC. Você recebe de volta o seguinte:

"

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1"><title>

</title><link href="App_Themes/selectors.css" rel="stylesheet" type="text/css" /></head>................etc

Isso não vai analisar em um obejct jQuery. Você começa necessidades para estar em uma página script do lado do servidor que irá HTML explicitamente saída.

Suponho que se você realmente precisa de um item no HTML, então você pode tira-lo para fora do texto usando o built-in métodos de string.

Mude seu código para algo como isto

$('#yourContainingDiv').html(data);

O html em dados serão colocados na tag div

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top