テキストエリアの先頭や末尾に文字を追加するのは簡単ですが、途中(カーソル位置)に挿入するにはひと手間必要です。
例として適当なフォームを作成します。
<form name="myForm"> <textarea name="myTextarea"></textarea> <input type="submit" value="送信"> </form>
次に以下のようなボタンを作ります。
<button onclick="addText();">文字追加</button>
ボタンを押したときに実行されるJavaScriptが以下のようになります。
function addText() { var textarea = document.myForm.myTextarea; var pos = textarea.selectionStart; var before = textarea.value.substr(0, pos); var after = textarea.value.substr(pos); textarea.value = before + "追加する文字列" + after; }
Geocoder APIを使えば住所から座標を取得することができます。
今回はJavaScriptではなくHTTPリクエストで座標を取得する方法をご紹介します。
取得するデータはJSON形式で受け取るようにしています。
使用する言語はPHPです。
まずはリクエストするURLとAPIキーを宣言
$googleapis = "https://maps.googleapis.com/maps/api/geocode/json"; $api_key = "YOUR API KEY";
続いてパラメーターを追加していきます。
検索する住所を追加
$googleapis .= "?address=" . $address;
国を指定(同じ名前の地名が中国等にあるとそちらの座標になってしまうことがあります)
$googleapis .= "&components=country:JP";
APIキーを設定します
$googleapis .= "&key=" . $api_key;
file_get_contents関数を使ってデータを取得します。
$data = file_get_contents($googleapis);
返ってきたJSONデータを解析して座標を取り出します。
$json = json_decode($data); $lat = $json->results[0]->geometry->location->lat; $lng = $json->results[0]->geometry->location->lng; if( $json->status == "OK" ) { echo $lat . "," . $lng; }
詳細な仕様は公式ドキュメントを参照ください。
https://developers.google.com/maps/documentation/geocoding/intro#GeocodingRequests
Realm.addメソッドで以下のようなコンパイルエラーが出ました。
'add(_:update:)' is unavailable: Pass .error, .modified or .all rather than a boolean. .error is equivalent to false and .all is equivalent to true.
どうやら第2引数にbool値を与える仕様が変わった模様。
第2引数に与える値はRealm.UpdatePolicyだそうで、
これまでfalseにしていた場合は.error、trueにしていた場合は.allを指定すればいいようです。
Xcode 11.2.1
Swift 5
Windows 10でデスクトップのアイコン名の影を消す方法です。
システムのプロパティを開き、[詳細設定]タブの[パフォーマンス]の[設定]をクリックします。
開いた[パフォーマンスオプション]の[視覚効果]タブのチェックボックスリストに
「デスクトップのアイコン名に影を付ける」チェックを外す。