お世話になっております。
数値フィールドの空白を判定した動きをしたいのですが、
console.logで見ると
新規作成時は「undifind」の判定となりますが
編集時は空白の判定となります。
このようなものでしょうか?
ご教示の程よろしくお願いいたします。
お世話になっております。
数値フィールドの空白を判定した動きをしたいのですが、
console.logで見ると
新規作成時は「undifind」の判定となりますが
編集時は空白の判定となります。
このようなものでしょうか?
ご教示の程よろしくお願いいたします。
青山昌司様
お世話になっております.
私の環境でも,「create.show」では「undefined」,「edit.show」では「‘’」(空文字)となりました.
因みに,kintone.app.record.getで取得すると,新規作成時と編集時共に「undefined」となりました.
未入力の判定は,「==」(等価演算子)を使った判定はせずに,暗黙の型変換でboolean型(trueまたはfalse)にするのが手軽かと思います.
・冗長なコード
if(event.record['数値'].value !== '' && event.record['数値'].value !== undefined) {
alert('数値が空ではないです.');
}
if(event.record['数値'].value === '' || event.record['数値'].value === undefined) {
alert('数値が空です.');
}
・手軽なコード
if(event.record['数値'].value) {
alert('数値が空ではないです.');
}
if(!event.record['数値'].value) {
alert('数値が空です.');
}
ifやwhileの()の中にboolean型以外の値を入れると,自動でtrueかfalseに変換してくれます.
どんな値がtrueで,どんな値がfalseになるかはJavaScriptの仕様で決まっています.
「undefined」と「‘’」(空文字)は共にfalseとなるので,未入力はfalseになると覚えておくと良いです.
下記なども一度目を通しておくと良いかと思います.
https://developer.cybozu.io/hc/ja/articles/201718170
https://developer.cybozu.io/hc/ja/community/posts/115017919303
https://qiita.com/phi/items/723aa59851b0716a87e3
江田様
お世話になっております。
いつもご返信ありがとうございます!
仕様という事でまた一つ勉強になりました。
参考のページもありがとうございます。
イベントの種類で判定が変わるとは思いませんでした。
今後ともよろしくお願いいたします。