1

asp.net WebForms アプリケーションで TextBox コントロールの特定の領域を選択したいと考えています。状況は、テキスト ボックスに で区切られた電子メール アドレスが含まれていること;です。有効な電子メール アドレスと無効な電子メール アドレスを分類する小さな MailValidator クラスを作成しました。

ユーザーがすぐに修正できるように、間違った電子メール アドレスを選択する必要があります。前述したように、有効なアドレスと無効なアドレスを知っています。

それ、どうやったら出来るの?テキスト全体を選択する方法を知っています.Focus() (少なくとも IE では動作しますが、それで十分です) 。しかし、特定の領域のみを選択するにはどうすればよいですか? TextBox.Text.Select<>行く方法はありますか?もしそうなら、誰かが例を提供できますか? .Select<>私は実際に何をしているのか完全には理解していません。

4

1 に答える 1

1

この関数でJavascriptを使用する必要があると思います。選択範囲の開始と終了を見つけるだけです。

function createSelection(field, start, end) {
    if( field.createTextRange ) {
      var selRange = field.createTextRange();
      selRange.collapse(true);
      selRange.moveStart('character', start);
      selRange.moveEnd('character', end);
      selRange.select();
      field.focus();
    } else if( field.setSelectionRange ) {
      field.focus();
      field.setSelectionRange(start, end);
    } else if( typeof field.selectionStart != 'undefined' ) {
      field.selectionStart = start;
      field.selectionEnd = end;
      field.focus();
    }
  }
于 2013-06-13T07:03:49.727 に答える