diff options
Diffstat (limited to 'files/ja/web')
-rw-r--r-- | files/ja/web/api/htmlinputelement/setrangetext/index.md | 141 |
1 files changed, 61 insertions, 80 deletions
diff --git a/files/ja/web/api/htmlinputelement/setrangetext/index.md b/files/ja/web/api/htmlinputelement/setrangetext/index.md index 06d23ddd27..8beee8bc70 100644 --- a/files/ja/web/api/htmlinputelement/setrangetext/index.md +++ b/files/ja/web/api/htmlinputelement/setrangetext/index.md @@ -3,99 +3,80 @@ title: HTMLInputElement.setRangeText() slug: Web/API/HTMLInputElement/setRangeText tags: - API + - HTML DOM - HTMLInputElement + - メソッド + - NeedsCompatTable + - リファレンス + - テキスト欄選択 API +browser-compat: api.HTMLInputElement.setRangeText translation_of: Web/API/HTMLInputElement/setRangeText --- -<div>{{APIRef("HTML DOM")}}</div> +{{APIRef("HTML DOM")}} -<p><span class="seoSummary"><strong><code>HTMLInputElement.setRangeText()</code></strong> メソッドを用いて,{{HTMLElement("input")}}や{{HTMLElement("textarea")}}要素において,文章の指定した範囲を新たな文字列で置き換えられます。</span></p> +**`HTMLInputElement.setRangeText()`** メソッドは、 {{HTMLElement("input")}} や {{HTMLElement("textarea")}} 要素の中のテキストの範囲を新しい文字列に置き換えます。 -<h2 id="構文">構文</h2> +## 構文 -<pre class="syntaxbox"><em>element</em>.setRangeText(<em>置換対象</em>); -<em>element</em>.setRangeText(<em>置換対象</em>, <em>開始</em>, <em>終了</em> [, <em>選択状態</em>]); -</pre> +```js +element.setRangeText(replacement); +element.setRangeText(replacement, start, end [, selectMode]); +``` -<h3 id="引数">引数</h3> +### 引数 -<dl> - <dt><code>置換対象</code></dt> - <dd>挿入する文字列。</dd> - <dt><code>開始</code>{{optional_inline}}</dt> - <dd>置き換える最初の文字の位置を0始まりで指定します。既定は現在の<code>selectionStart</code>の値(利用者が現在選択している範囲の始め)です。</dd> - <dt><code>終了</code>{{optional_inline}}</dt> - <dd>置き換える最初の文字の<em>一つ後の</em>位置を0始まりで指定します。既定は現在の<code>selectionEnd</code>の値(利用者が現在選択している範囲の終わり)です。</dd> - <dt><code>選択状態</code>{{optional_inline}}</dt> - <dd>文章が置換された後,選択範囲がどのように振る舞うべきかを指定します。<br> - 次の値が有効です: - <ul> - <li><code>select</code>: 新規挿入した文章を選択する。</li> - <li><code>start</code>: 挿入した文書の直前に選択範囲を移動する。</li> - <li><code>end</code>: 挿入した文書の直後に選択範囲を移動する。</li> - <li><code>preserve</code>: 選択範囲を保持しようとします。既定です。</li> - </ul> - </dd> -</dl> +- `replacement` + - : 挿入する文字列。 +- `start` {{optional_inline}} + - : 置換する最初の文字を 0 から始まる位置で指定します。既定値は現在の `selectionStart` の値(ユーザーが現在選択している先頭)です。 +- `end` {{optional_inline}} + - : 置換する最後の文字の*次の*文字を 0 から始まる位置で指定します。既定値は現在の `selectionEnd` の値(ユーザーが現在選択している末尾)です。 +- `selectMode` {{optional_inline}} -<h2 id="事例">事例</h2> + - : テキストが置換された後で、選択範囲がどのように設定されるかを定義する文字列です。 + 次の値が利用できます。 -<p>例中のボタンを押して,欄内の文章の一部を置換してみてください。新規挿入された文章は,その後強調(選択)されるでしょう。</p> + - `"select"`: 新規挿入したテキストを選択します。 + - `"start"`: 挿入したテキストの直前に選択範囲を移動します。 + - `"end"`: 挿入したテキストの直後に選択範囲を移動します。 + - `"preserve"`: 選択範囲を保全しようとします。これが既定値です。 -<h3 id="HTML">HTML</h3> +## 例 -<pre class="brush: html"><input type="text" id="text-box" size="18" value="この文章は更新されていません。"/> -<button onclick="selectText()">文章を更新する</button> -</pre> +この例にあるボタンをクリックすると、テキストボックス内のテキストの一部を置き換えます。新しく挿入されたテキストは、その後で強調(選択)されます。 -<h3 id="JavaScript">JavaScript</h3> +### HTML -<pre class="brush: js">function selectText() { +```html +<input type="text" id="text-box" size="30" value="このテキストは更新されていません。"> +<button onclick="selectText()">テキストを更新</button> +``` + +### JavaScript + +```js +function selectText() { const input = document.getElementById('text-box'); input.focus(); - input.setRangeText('ました', 9, 14, 'select'); -}</pre> - -<h3 id="結果">結果</h3> - -<p>{{EmbedLiveSample("Example")}}</p> - -<h2 id="仕様書">仕様書</h2> - -<table class="standard-table"> - <thead> - <tr> - <th scope="col">仕様書</th> - <th scope="col">状態</th> - <th scope="col">備考</th> - </tr> - </thead> - <tbody> - <tr> - <td>{{SpecName("HTML WHATWG", "forms.html#dom-textarea/input-setrangetext", "HTMLInputElement.setSelectionRange()")}}</td> - <td>{{Spec2("HTML WHATWG")}}</td> - <td>変更なし</td> - </tr> - <tr> - <td>{{SpecName("HTML5 W3C", "forms.html#dom-textarea/input-setrangetext", "HTMLInputElement.setSelectionRange()")}}</td> - <td>{{Spec2("HTML5 W3C")}}</td> - <td>初回定義</td> - </tr> - </tbody> -</table> - -<h2 id="ブラウザ互換性">ブラウザ互換性</h2> - -<div> - - -<p>{{Compat("api.HTMLInputElement.setRangeText")}}</p> -</div> - -<h2 id="関連項目">関連項目</h2> - -<ul> - <li>{{HTMLElement("input")}}</li> - <li>{{HTMLElement("textarea")}}</li> - <li>{{domxref("HTMLInputElement")}}</li> - <li>{{domxref("Selection")}}</li> -</ul> + input.setRangeText('ました', 11, 16, 'select'); +} +``` + +### 結果 + +{{EmbedLiveSample("Example")}} + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +## 関連情報 + +- {{HTMLElement("input")}} +- {{HTMLElement("textarea")}} +- {{domxref("HTMLInputElement")}} +- {{domxref("Selection")}} |