iPadで使うことを前提に軽めのWEBアプリを作った時に困った話です。

input欄クリックしたらの文字列を全選択させたい

input欄をクリックしたら必ず内容を編集するので、focusされた瞬間に文字列全体を選択させたい。
以下のように書いてみました。

$("input[type=text]").on('click', function(){
    $(this).select();
});

普通にMacで確認したら想定通り!

iPadやiPhoneでは選択されない!

ところがこのやり方だとiPadでは選択されない!
clickイベントがダメなのかと思いtouchイベントにしてみて動かない。

ググりまくってみつけたこのページ
なんとiOSではjQueryの.select()が動かないとのこと!!!

上記ページに書いてある通りにしたらちゃんと動きました!

$("input[type=text]").on('click', function(e) {
        e.target.setSelectionRange(0, e.target.value.length);
});

ありがとうございます!!!!!