全角数字を半角に置換させる方法

今検索画面を作っているところなのですが、Inputに入力した全角数字を、半角数字に修正して検索する方法を知りたいです。"find&replace"であれこれやっているのですが、上手くできず。

誰か分かる方、ご教授願いたいです。

inputにidを付与して、HTMLエレメントを配置して、その中に以下のコードをコピペしてください。
途中の"inputエレメントのid"は、ご自身が指定したidに置き換えてください。

<script>
$(function(){
    $("inputエレメントのid").change(function(){
        var str = $(this).val();
        str = str.replace( /[A-Za-z0-9-!”#$%&’()=<>,.?_[]{}@^~¥]/g, function(s) {
            return String.fromCharCode(s.charCodeAt(0) - 65248);
        });
        $(this).val(str);
    }).change();
});
</script>

「いいね!」 9

当初の質問者ではございませんが、ご相談をさせてください。

全角数字を半角数字に変更してDBに保存したいのですが、
ご回答されている以下2点を実施しても変換ができず困っております。

  • Inputエレメントのidを登録
  • HTMLエレメントに指定のJavascriptを記述

キャプチャの変換ボタンをクリックすると、create a new thingでField typeがtextのカラムに
Input’s valueが登録できるWorkflowを組んでいます。

誤っていそうなところがわかりましたら、ご教授いただけますでしょうか…?


スクリーンショット 2023-01-13 15.34.51

@akihiro
遅れました。

HTML側のidには、#aaa というように "#"を入れてもらえれば動作すると思います。

「いいね!」 2

ありがとうございます!
"#"を入れたら無事動作しました!!

ご参考までですが、
Inputの親GroupにThis element is visible on page loadのチェックを外し
Conditionalで条件充足時のみ表示する設計をすると動作してくれないんですね…
実装される方はお気をつけください。

「いいね!」 1