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を探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ActiveXobjectが作成できない
-
<a>タグのテキストを取得
-
指定要素のクリック位置を取得...
-
javascriptで編集可能不可能の...
-
Enterで次の入力項目へ進むには?
-
配列の大括弧と丸括弧はどう違う?
-
クリックしたリンクの色を保持...
-
モーダルダイアログウィンドウ...
-
同じIDで定義した要素の配列を...
-
functionから別のfunctionを実...
-
idを使わずにonclickで自身の要...
-
ASP+アクセスでのSQLコメントに...
-
window.openでタイトル名の指定
-
javascriptの基本的なことだと...
-
【正規表現】【javascript】CR...
-
jQueryの :not() .not() が有効...
-
ASP.NETのコントロールの値をJa...
-
ASP.NET MVCでObjectをjsに渡す
-
MFCのキャプション変更
-
VSCODE[Python]の設定について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<a>タグのテキストを取得
-
ActiveXobjectが作成できない
-
onchangeイベントを使ってspan...
-
任意の座標をクリックさせるには
-
JavaScript を使ってpkゲームを...
-
配列の大括弧と丸括弧はどう違う?
-
javascript 特定のタグのidの存...
-
問題はbind の付いたリスナーを...
-
innerHTML実行後のイベント
-
javascriptであるボタンを押す...
-
RadioButtonListの表示制御
-
HTML:Tableタグに対し、JavaScr...
-
画像の一部を表示
-
appendChildがieだとできない??
-
div要素内の全input要素をdisable
-
クッキーを食べさせた会員には...
-
JavaScriptでオブジェクトを取...
-
javascriptでCSVを呼出しvlookup
-
javascriptで自動計算フォーム...
-
画像上のクリックした場所が分...
おすすめ情報
ご教諭頂くことはできませんでしょうか?