対象ブラウザはGoogle Chromeです(IEでは解決済み)
textareaのボックス内で、現在キャレットが位置する行インデックスを
取得したいのですが、どうすればよいでしょうか。
最終的にやりたいのはオートインデントです。
textarea内でEnterキーを押した時に、その行の先頭のスペースの数を調べて
次の行の先頭に同じ数のスペースを自動で挿入します。
このため、Enterキーを押した瞬間の行インデックスを取得する必要があります。
その後の処理であるスペースの挿入は方法が分かっているので問題ありません。
よろしくお願い致します。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
回答ありがとうございます。
残念ながら参考になりそうなサンプルはありませんでしたが、
自己解決しましたので、コードをここに載せておきます。
var textAreaElement = document.getElementById("TxtHoge");
// 一時的にテキスト選択範囲の始点をtextareaの先頭にして、
// 現在のキャレット位置までの文字列を取得し、改行コードで分割する
textAreaElement.selectionStart = 0;
var sel = document.getSelection() + "";
textAreaElement.selectionStart = textAreaElement.selectionEnd;
var lines = sel.split("\n");
var curLineText = lines[lines.length - 1];
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 外国株 インデックス投資は、実は罠がある、バンガード社が、ウオール街の ランダムウオーカーとか、宣伝活動した 2 2023/01/06 22:08
- MySQL MySQLに登録した内容を更新する時の、textareaの使い方 1 2022/07/11 18:20
- Excel(エクセル) セルの値をグーグルで検索するエクセルVBAについて! 2 2022/08/01 21:41
- Excel(エクセル) MSさん、シッカリしてよ~んッ! 3 2023/01/30 13:15
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- リフォーム・リノベーション 押入れスペースについて 1 2022/10/09 21:55
- その他(プログラミング・Web制作) pythonにおける単方向リストの実装について 4 2022/07/13 12:34
- Excel(エクセル) Excel ヘルプの[ロック解除]、<c0>、</c0> の意味は何ですか? 1 2023/02/20 16:58
- HTML・CSS Windowsのformでtextareaに入力すると改行が反映されません 2 2023/06/01 11:50
- マウス・キーボード テンキーの設定がおかしくなっています。 5 2023/08/09 15:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
郵便番号検索APIにてget Elemen...
-
VBA:小数点以下の数字を取得で...
-
VB.NETで DataRow()を利用して...
-
ディスプレイの表示可能な解像...
-
ListView 項目の選択/選択解除...
-
モニタの物理解像度を得る(Win3...
-
C言語におけるコンピュータ名・...
-
UWSCでhtmlソースの文字列を取...
-
利用者側のMACアドレスを取得し...
-
POSTやGETの値の取得方法
-
自動的に高さ指定していないt...
-
エクセルVBA リストボック...
-
ホームページアイコンの取得
-
URIでのページの移動について
-
javascriptでソースコードを取得
-
VBA ユーザーフォーム ボタンク...
-
VBAの計算で@が出てしまう件
-
ExcelVBAを使って、値...
-
VBAを使用した時間管理
-
Windows formアプリで データグ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでActiveDirectoryのユーザ...
-
VB.NETで DataRow()を利用して...
-
VBA:小数点以下の数字を取得で...
-
ListView 項目の選択/選択解除...
-
like演算子内に変数って使えな...
-
count(*)で取得した値をJAVAの...
-
利用者側のMACアドレスを取得し...
-
データ数をカウントしたいのですが
-
JavaScriptでWindowsログオンID...
-
ListViewで複数選択された項目...
-
Flexgridで選択行の列の値を取...
-
エクセルVBAで複数選択できるよ...
-
VBA リストボックス複数選択か...
-
getParameter と getAttribut...
-
Excel VBA でログインしてい...
-
VBScriptで数値にコンマを付け...
-
Spreadの選択行の取得について
-
コンボボックスの表示は最大何行?
-
コンボボックス表示文字列を取...
-
VB .netにて現在時刻+1時間後...
おすすめ情報