2011-12-17 7 views
0

ajaxでのポストコールの後にメッセージアラートは表示されません。AJAXはeach()とfind()アプリケーションを呼び出します

を考えると、次のAJAXコール:

var val= 1; 
$.post("ajax.php", { information: val }, function(result) 
{ 
    $(result).find("div").each(function() 
    { 
    if($(this).text()=="OK") 
     { 
     alert("OK"); 
     } 
    }); 
}); 

とajax.phpファイル:あなたの助けを

<?php 
if($_POST['information']==1) 
{ 
    ?><div>You must fill all the fields</div><?php 
    ?><div>The title must be between 10 and 30 characters</div><?php 
    ?><div>Please insert your email in the field</div><?php 
    ?><div id="answer">OK</div><?php 
} 
?> 

ありがとう!

EDIT:Bennyによって修正されたエラーが見つかりました。修正されたポスト構文と$(結果)構文

答えて

1

あなたの例では、誤った$ .post構文があります。

$.post("ajax.php"), { information: $val }, function(result){ 
    // Callback code 
}); 

正しい構文になります。

$.post("ajax.php", { information: $val }, function(result){ 
    // Callback code 
}); 

また、$ val変数名の一部として$を使用すると混乱します。開発者は、たとえローカル変数名の一部であっても、jQuery変数と何か関係があると思うようになるかもしれません。

var val = 1; 
+0

エラーを修正しましたが、それでも動作しません。私はすでにpostメソッドを使用しています。だからそれで大丈夫です。私の質問は、それぞれの構文と関数が正しく書かれているかどうかです。 –

+0

私はあなたがresult.find()の代わりに$(result).find()をしなければならないと思います。 –

+0

おかげさまで、コードが実行されています(コードが壊れる前に)が、関数が "OK"を見つけられないように見えます。 –