2009-06-24 18 views
0

このjQueryでの殺人事件。jquery投稿へのコールバック問題

ユーザーがdivレイヤーをクリックして関数にアクセスしたように見えますが、PHPファイルの結果をdiv結果に戻さない場合、DB結果のセットを表示しようとしています。何かご意見は?

<script type="text/javascript"> 
    $(document).ready(function() { 
    $('#clickme').click(function() { 
     //alert('clicked'); 
     $.get("doquery.php", {id: 1, action: all}, function(result) { 
     $("#results").html(result); 
     }); 
    }); 
    }); 
</script> 

<div id="clickme"> 
Show results 
</div> 

<div id="results"></div> 
+0

をあなたは返された結果を警告するとどうなりますか、それはあなたです定義されていませんPHPスクリプトと呼ばれる? – Fermin

+0

アラート(結果)は何を意味しますか? – Tomalak

+0

はい、私は警告(結果)喜びを追加し、これを非常に困惑しません。 –

答えて

0

私はこの問題を解決しました。

$に.get( "doquery.php"、{ID:1、アクション:全て}、関数(結果){

作用:それは、このコード行であった全てのハイフンアクションにされているべきです:。。??「すべて」

愚かなミスが、このmonringきれいな外観を持っていたし、すぐに私が問題に気づく

おかげで再び

1

私の疑惑は、PHPページがいくつかの種類のエラーを返すということです。 $.get()のコールバックは、成功した場合にのみ実行されます( "200 OK")。

すべての種類のHTTP応答ステータス値に対してコールバックを実行するには、$.ajax()を参照してください。

+0

まだアイデアはありませんが、doquery.phpページはhtmlやphpページと同じパスにあり、 "200 OK"となります。非常に困った。 –

+0

アラート(結果)がまったく呼び出されないという事実は、HTTP要求が成功しなかったことを明確に示しています。実際に何が起こったのかをFireBugにチェックしたい場合は、エラーを素早く発見します。 – Tomalak

0

"doquery.php"は正しいパスですか?実際には/scripts/doquery.phpかそのようなものでなければならないので、404が得られている可能性があります。

+0

そのルートパスはHTMlファイルと同じですが、ファイアウォールにライブHTTPヘッダーがあり、テキストをクリックすると出力がないので、PHPを呼び出すことができないようです。 –

0

Firebugでは、get要求の要求と応答を見ることができます。だから私はそこから始めて、警告の代わりに返されるものを見ます。応答が良い場合は、コールバック関数を見てください。それは問題がPHPスクリプトにあるように聞こえる。また、単純な静的データをフラットに戻して、それが何を得るかを見てみることもできます。

関連する問題