Como faço para carregar um URL no iframe com jQuery

Quero carregar um iframe ao clicar, é o que tenho até agora:

$("#frame").click(function () { $('this').load("http://www.google.com/"); }); 

Não funciona Este é o código completo: JS Bin

 $("#button").click(function () { $("#frame").attr("src", "http://www.example.com/"); }); 

HTML:

  
 $("#frame").click(function () { this.src="http://www.google.com/"; }); 

Às vezes o JavaScript simples é ainda mais legal e rápido que o jQuery 😉

Tente $(this).load("/file_name.html"); . Este método tem como alvo um arquivo local.

Você também pode direcionar arquivos remotos (em outro domínio), veja: http://en.wikipedia.org/wiki/Same_origin_policy

aqui está o Iframe em vista:

  

Carregue no script:

  $('#ifmReport').attr('src', '/ReportViewer/ReportViewer.aspx'); 

Apenas no caso de alguém ainda se deparar com esta velha pergunta:

O código era teoricamente quase correto em certo sentido, o problema era o uso de $ (‘this’) em vez de $ (this), portanto dizendo ao jQuery para procurar por uma tag.

 $(document).ready(function(){ $("#frame").click(function () { $(this).load("http://www.google.com/"); }); }); 

O script em si não funcionaria como está agora, porque a function load () em si é uma function AJAX, e o Google não parece permitir especificamente o uso de carregar esta página com AJAX, mas este método deve ser fácil de usar para carregar páginas de seu próprio domínio usando caminhos relativos.