だから基本的に、私はボタンのクリックに反応してこんにちは世界を反映するAJAXスクリプトを実行するPHP呼び出しを書きました(JSによって処理されます)。私はステータス200を取得し、私のブラウザの "inspect element"関数のレスポンスセクションに "Hello world"と表示されますが、ページには表示されません。私のサイトがMySQLデータベースに正しく接続していることを示すために使ったので、 "echo"がうまくいくはずだと私は知っています。そのため、応答セクションには「Connected SuccessfullyHello World」と表示されますが、ページには「Connected Successfully」と表示されるだけです。したがって、何らかの理由で、それは実際にそのHello Worldビットを示していません。
PHP
function test() {
echo "Hello World";
die();
}
JS
function yes(){
jQuery.ajax({
url: ajaxurl,
data: {
'action':'test_function'
},
});
};
答えがばかげて単純である場合は事前に謝罪 - 私はWeb開発に不慣れです
さらなる情報:Xテーマ(WP)を使う
あなたは正しい方向に進んでいますが、いくつか微調整しなければなりません。あなたのjavascriptは(最良の場合)結果としてオブジェクトを必要とし、もしあなたが結果がPHPから来るのを見たいのならあなたのjsはそれを処理しなければなりません。簡単なテストは、コンソールログを作成することです。それが機能するかどうかを確認するだけです。
このようにコードを編集して、ブラウザのコンソールで確認してください。
// PHP file:
function test() {
$result = array(0 => 'Testresult from Ajax 1', 1 => 'Testresult from Ajax 2');
header('Content-Type: application/json');
die (json_encode($result));
}
その後、あなたのjsで:
// JS file:
function yes() {
var obj = {
url: ajaxurl,
type: 'POST',
data: {
action: 'test_function'
},
dataType: 'JSON',
cache: false
};
jQuery.ajax(obj)
.done(function( data ) {
console.log('result is: ', data);
});
};
それがうまくいけば、あなたはdone()関数で結果を扱うことができます、例えばものをdomか何かに書いてください。