Webサイトのメッセージシステムを設計しようとしていますが、ajaxを実行できません。だから私はファイル間の相互作用のより単純なバージョンを作ります。
以下は、test.phpとload.phpの両方がルートフォルダー(public_html)の下にある私のファイルです。
test.phpにajax関数があります。 load.phpは単に "wow"をエコーするだけです。
$("#test").click(function(){
alert("Clicked.");
$.ajax({
url:"/load.php",
type:"POST",
beforeSend: function(){
alert("testing");
},
success:function(result){
$("#result").html(result);
alert(" sss "+result);
}
}).error(function(){alert("wrong");});
});
今では完全に動作します。
...........相対パスの設定方法...................
これはより複雑なデザインです
3つのファイル、すべて別のフォルダにあります:
したがって、ユーザーがmessages.phpを読み込むと、control.phpが読み込まれ、ajax呼び出しcontrol.phpが実行されます。
私はajax用にこれらのパスを設定する方法についてとても混乱しています
(messages.phpにcontrol.phpを含めると正常に動作します)
ありがとう
接続しようとしているファイルがルートにある場合は、/[file].php
を使用して、パス上のどのページが正しいかを確認できます。相対パスの問題があるようです。コンソールでエラーが発生しますか?
AjaxのURLを理解するには、常に覚えておくべきことが2つあります。
1. ajax urlの先頭にスラッシュを置くと、ajax urlパターンは `hostname/yourFile`の例になります:
// current url: http://sample.com/users
// ajax code load from users page
$.ajax({
url: '/yourFile.php',
...
});
// ajax url will be: http://sample.com/yourFile.php
2.最初にスラッシュを使用しない場合、ajax urlはブラウザーの現在のURLに追加されます。例:
// current url: http://sample.com/users
// ajax code load from users page
$.ajax({
url: 'yourFile.php',
...
});
//...ajax url will be http://simple.com/users/yourFile.php
これがajaxを使いたい人に役立つことを願っています。コーディングありがとうございます。