数値項目用のINPUT TYPE=TEXTの枠、フォーカスがあたったら、カーソルを一番右に配置したい


皆様 いつもお世話になっております。

標題の件、数値項目が入る枠は、事前に値が入っていて内容の変更・もしくは削除する場合は、バックスペースキーで操作を行いたいものではないでしょうか？デリートキーではなく。

# ====質問====

INPUT
TYPE=TEXTの枠にフォーカスがあたったら、カーソルを一番右に配置する方法があれば教えてください。ちなみに現況当該枠は以下コーディングを果たしてあります。

[code]

    // 数量枠は．．．数値のみ入力可・フォーカス外れたらカンマ表示・フォーカスしたらカンマ外した表示
        $("input[name=amount]").on({
            "keydown": function(e) {
                var k = e.keyCode;
                if (!((k >= 48 && k <= 57) || (k >= 96 && k <= 105) || k == 32 || k == 8 || k == 9 || k == 46 || k == 39 || k == 37)) {
                    return false;
                }
            },
                "blur": function() {
                var num = $(this).val();
                num = num.replace(/(\d)(?=(\d\d\d)+$)/g, "$1,");
                $(this).val(num);
                },
                "focus": function() {
                var num = $(this).val();
                num = num.replace(/,/g, "");
                $(this).val(num);
            }
        });
    
[/code]

追記： とても大事なことを伝え忘れていました。CSSで当該枠を右詰め表示をしています。

[code]

    /* 数量入力列のみ右つめ表示 */
    input[name='amount'] {
        text-align: right;
    }
    
[/code]

よろしくお願い致します。




以下のような感じでしょうか。

[code]

    "focus": function(e) {
      var num = $(this).val();
      num = num.replace(/,/g, "");
      $(this).val(num);
      if (this.selectionStart != null) {
        this.selectionStart = this.selectionEnd = this.value.length;
      } else {
        this.createTextRange().select();
      }
    }
    
[/code]




以下のような感じでしょうか。

[code]

    "focus": function(e) {
      var num = $(this).val();
      num = num.replace(/,/g, "");
      $(this).val(num);
      if (this.selectionStart != null) {
        this.selectionStart = this.selectionEnd = this.value.length;
      } else {
        this.createTextRange().select();
      }
    }
    
[/code]

