AJAXでURLのパラメータを取得する方法
-
AJAXではURLのパラメータは取得できないのでしょうか?
現在のURLが「http://example.com/wp-admin/admin.php?page=mypage」だとして以下でコンソールに
page = mypage
でなくpage = なし
と表示されるのです。↓ dashboard.js
my_ajax_test(); function my_ajax_test(){ const data = { action : 'my_ajax_test' }; $.ajax({ url : 'http://example.com/wp-admin/admin-ajax.php', type: 'POST', data: data }).done(function( page ) { console.log( 'page =' , page ); }).fail(function(XMLHttpRequest, textStatus, errorThrown) { alert('取得失敗'); }); }
↓ dashboard.php
add_action( 'wp_ajax_my_ajax_test', 'my_ajax_test' ); function my_ajax_test(){ $page = $_GET['page'] ?? 'なし'; echo $page; die(); }
もし上記の流れでの取得がそもそも不可能なのでしたら、それはなぜでしょうか?
そしてそれが不可能なら、AJAXでパラメータを取得するならば、以下のように
my_ajax_test()
のdata
に入れて送るのが一番いい(というかそれしかない?)でしょうか?function my_ajax_test(){ const data = { action : 'my_ajax_test' page : location.search.split('?page=')[1] // "mypage" を取得 }; // 以下同略
2件の返信を表示中 - 1 - 2件目 (全2件中)
2件の返信を表示中 - 1 - 2件目 (全2件中)
- トピック「AJAXでURLのパラメータを取得する方法」には新たに返信することはできません。