2016-11-25 9 views
0

私はjQuery AJAX関数を持っていますが、実行しないだけでなく、PrettyPhotoのように他のjs関数もブロックします。 $("#cookie-bar").hide(1000);でも実行されません。私のミスはどこですか?AJAX要求が期待通りに機能しない

function getresult(newid) { 
    var oldid = newid; 
    if (oldid != "") { 
    var idnum = oldid + 1; 
    } else { 
    var idnum = <? PHP echo $last_idh; ?> ; 
    } 
    $.ajax({ 
    url: "getresult.php?idh=" + idnum + "&mese=<?PHP echo $mese; ?>", 
    type: "GET", 
    cache: false, 
    success: function(html) { 
     var mydata = html; 
     var txtloaded = mydata.split('§'); 
     var scheda = txtloaded[0]; 
     var num = txtloaded[1]; 
     $("#schedules").append(scheda); 
    }, 
    error: function() {} 
    loadData(num); 
    }); 
} 

function loadData(nextid) { 
    var next = nextid; 
    setTimeout(function() { 
    getresult(next); 
    }, 1000); 
} 

$(window).scroll(function() { 
    $("#cookie-bar").hide(1000); 
    loadData(); 
}); 

私はいくつかの修正を行っているので、コードは以下のようになります。

function getresult(newid) { 
 
\t var idnum = newid + 1; 
 
\t $.ajax({ 
 
\t \t url: "getresult.php?idh="+idnum+"&mese=<?PHP echo $mese; ?>", 
 
\t \t type: "GET", 
 
\t \t cache: false, 
 
\t \t success: function(html){ 
 
\t \t var mydata = html; 
 
\t \t var txtloaded = mydata.split('§'); 
 
\t \t var scheda = txtloaded[0]; 
 
\t \t var num = txtloaded[1]; 
 
\t \t $("#schedules").append(scheda); 
 
\t \t }, 
 
\t \t error: function(){} 
 
\t \t loadData(num); 
 
    }); 
 
} 
 
function loadData(nextid) { 
 
\t var next = nextid; 
 
\t setTimeout(function(){ 
 
\t \t getresult(next); 
 
\t },1000); 
 
} 
 
\t 
 
$(window).scroll(function() { 
 
\t $("#cookie-bar").hide(1000); 
 
\t loadData("<?PHP echo $last_idh; ?>"); 
 
});

コンソールにはエラーがここにあることを私に言う: "loaddataの(数値);"。変数 'num'は値のように認識されません...

+1

エラーコンソールで何だ空の値でインスタンス化されなければなりませんか? 「ネット」タブはAjaxリクエストについて何を言っていますか? –

+1

コンソールを開く – Weedoze

+0

'window.scroll'の中に' loadData'メソッドを引数なしで呼び出しています( 'next id')。しかし、 'getresult'はnewIdが' 'undefined ''ではないことをチェックします。 – ZX12R

答えて

0

loadDatagetResultです。したがって、scrollから到達できません。 loadDatagetResultの外側に入れてください。もう1つの問題は、loadDataに電話するときにnewidを渡さないことです。

0

loaddataのは、あなたのコード

$(window).scroll(function() { 
    $("#cookie-bar").hide(1000); 
    loadData(""); 
}); 

のロジックを編集

error: function(e) {} 
    console.log(e); 
    }); 
+0

loadData is getResult。それが主な問題です。 –

+0

エラー機能でloadDataを削除し、 エラーを設定します。function(e){} consol.log(e); }); –

関連する問題