入力文字自動変換

 フィールドAに入力した文字が 1234-AB-5678 だった場合

フィールドBに 1234AB568,1234ab5678

と自動入力されるような方法を探しています。

 

検索をする際に、ハイフンや大文字小文字で判別をせずに、数字文字だけで検索をヒットさせるための施策です。

 

GP-KIYOさん

cstapの瀧ヶ平です。

入力文字列inputから英数字以外を取り除くのであれば

input.replace(/[^\da-zA-Z]+/g,“”)

を実行すれば可能です。

また、大文字への変換は

input.toUpperCase()

小文字への変換は

input.toLowerCase()

によって可能です。
これらを利用して文字列を変換してフィールドBに目的の文字列を入力することが可能かと思います。

参考になりますでしょうか?

record[‘フィールドA’].[‘value’]=record[‘フィールドB’][‘value’].toLowerCase() ってしてもダメですか?

GP-KIYO さん

その場合だとフィールドAにフィールドBを小文字にした文字列が代入されてしまいますね。

var fieldA = record["フィールドA"].value.replace(/[^0-9a-zA-Z]/g, "");
record["フィールドB"].value = fieldA.toUpperCase() + "," + fieldA.toLowerCase();

としたら良いかと思います。

ありがとうございます。 こちらで対応できました。

ただ、kintoneの検索はフィールド全検索でしか動かないようなので

var fieldA = record["フィールドA"].value.replace(/[^0-9a-zA-Z]/g, "");
record["フィールドB"].value = fieldA.toUpperCase();
record["フィールドC"].value = fieldA.toLowerCase();

としました。