したがって、ASP.NET texbox (入力) 内のすべてのテキストを選択するこの非常に単純な JS 関数があります。
function selectAllText(textbox) {
textbox.focus();
textbox.select();
}
..そして、クリック イベントで次のように呼び出されます。
$("#<%=Textbox1.ClientID %>").click(function () { selectAllText(jQuery(this)) });
問題は、ユーザーがテキスト ボックス内を何回クリックしても、すべてのテキストが常に選択されていることです。これが発生する理由は理解していますが(上記のコードの方法に基づいて)、ユーザーが単語の途中をクリックしてカーソルを元に戻してテキストを変更しようとすると、うまく機能しません。
この JS を変更して、テキストが既に強調表示されているかどうかを確認し、テキストの選択を解除するにはどうすればよいですか? これはその後のクリックであり、ユーザーはクリックされた正確な場所に単一のカーソルを置いて変更を加えることができます。
メソッドに関するドキュメントを取得して、.select()
できるかどうかを確認しようとしていますif(!textbox.select())
が、見つけるのに苦労しているため、ドキュメントのリンクがあれば投稿してください。
編集:この問題と回避策の必要性は IE のようです (私は IE9 を使用しています)。Chrome ではデフォルトの動作が必要ですが、これは IE で実行されるイントラネット アプリケーション用であるため、明示的な回避策が必要なようです。
ありがとう!