
WordPressのコンタクトフォーム7にて送信者の位置情報を送らせたいのですが、
以下のコードを独自タグ作成し、コンタクトフォーム7にて利用出来るようにすることは出来ませんでしょうか?
<body>
<button type="button" id="get-gps">位置情報取得</button>
<p id="lat">緯度: </p>
<p id="lon">経度: </p>
<p id="address"></p>
</body>
<script>
/** 変換表を入れる場所 */
var GSI = {};
const latEle = document.querySelector('#lat');
const lonEle = document.querySelector('#lon');
const addressEle = document.querySelector('#address');
const gpsButton = document.querySelector('#get-gps');
/**
* 緯度経度を画面表示
*/
const setGeoLoc = (coords) => {
latEle.textContent = `緯度: ${coords.latitude}`;
lonEle.textContent = `経度: ${coords.longitude}`;
}
/**
* 緯度経度から住所を取得して表示
*/
const getAddress = async (coords) => {
// 逆ジオコーディング API
const url = new URL('https://mreversegeocoder.gsi.go.jp/reverse-geoco …
url.searchParams.set('lat', coords.latitude);
url.searchParams.set('lon', coords.longitude);
const res = await fetch(url.toString());
const json = await res.json();
const data = json.results;
// 変換表から都道府県などを取得
const muniData = GSI.MUNI_ARRAY[json.results.muniCd];
// 都道府県コード,都道府県名,市区町村コード,市区町村名 に分割
const [prefCode, pref, muniCode, city] = muniData.split(',');
// 画面に反映
address.textContent = `${pref} ${city} ${data.lv01Nm}`;
};
/**
* 位置情報 API の実行(イベントリスナ)
*/
gpsButton.addEventListener('click', () => {
navigator.geolocation.getCurrentPosition(
geoLoc => {
setGeoLoc(geoLoc.coords);
getAddress(geoLoc.coords);
},
err => console.error({err}),
);
});
</script>
<script src="https://maps.gsi.go.jp/js/muni.js"></script> <!-- 変換表の読込 -->
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[初心者]javascriptのfor文でな...
-
javascriptで編集可能不可能の...
-
ActiveXobjectが作成できない
-
HTML:Tableタグに対し、JavaScr...
-
IE8でdivのcontenteditable=tru...
-
「エラー:…は宣言されていませ...
-
innerHTML実行後のイベント
-
Click回数を数え、規定された回...
-
リンクを新しい窓で開きたい
-
RadioButtonListの表示制御
-
C#で、ContextMenuStripに動的...
-
Latexに関する質問です。
-
文字列を時間で入れ替え
-
文字サイズ変更ボタンを設置し...
-
google apps scriptの終了のさせ方
-
APIを使って埋め込んだグーグル...
-
functionから別のfunctionを実...
-
半角と全角の文字数について
-
XMLでのAttributeを持ったNode...
-
指定日数経過でHTML上のデータ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ActiveXobjectが作成できない
-
<a>タグのテキストを取得
-
onchangeイベントを使ってspan...
-
任意の座標をクリックさせるには
-
innerHTML実行後のイベント
-
div要素内の全input要素をdisable
-
javascriptを使ったページ内の...
-
onclickを使わずにイベント処理...
-
javascriptで編集可能不可能の...
-
[初心者]javascriptのfor文でな...
-
「エラー:…は宣言されていませ...
-
配列の大括弧と丸括弧はどう違う?
-
Click回数を数え、規定された回...
-
【Tabキー】特定の範囲内だけで...
-
onclickとonkeypressの重複
-
javascriptでCSVを呼出しvlookup
-
HTML:Tableタグに対し、JavaScr...
-
ページ先頭にスムーズに移動(...
-
IE8でdivのcontenteditable=tru...
-
画像の一部を表示
おすすめ情報
ご教諭頂くことはできませんでしょうか?