Выполнение кода после завершения процесса - jQuery - PullRequest
1 голос
/ 17 августа 2011

Я хочу запустить:

$(".left").load("created.php");

после

$("#placeholder").load("create.php")

Я попробовал следующее, но это не сработало:

$("#create").live("click", function() {
 if($("#placeholder").load("create.php")) {
  $(".left").load("created.php");
 }
})

Ответы [ 4 ]

2 голосов
/ 17 августа 2011

Функция jQuery load() работает асинхронно. Вам нужно использовать функцию обратного вызова для запуска кода после после первой загрузки.

Следующий код должен быть достаточным:

 $("#create").live("click", function() {
   $("#placeholder").load("create.php", function() {
     $(".left").load("created.php");
   });
 });

Наслаждайтесь!

0 голосов
/ 17 августа 2011

Выполнить его в обработчике успеха предыдущего load

$("#placeholder").load("create.php", function(){
   $(".left").load("created.php");
});
0 голосов
/ 17 августа 2011
if($("#placeholder").load("create.php")) 

эта строка означает загрузку create.php, а затем возвращает объект jqxhr, который не соответствует вашим ожиданиям.используйте обратный вызов метода загрузки: $ ("# placeholder"). load ("create.php", function (data) {...}) Или используйте вместо них $ .when и .then

0 голосов
/ 17 августа 2011

вызов created.php при обратном вызове первой загрузки

$("#placeholder").load("create.php",null,function(){

$(".left").load("created.php");

});

jquery load

...