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 回答