お世話になります。
必須項目であるドロップダウン(drop_down)において、以下のソースコードで用いて初期値を外しています。
(function() {
"use strict";
fb.events.form.created = [function (state) {
state.record["drop_down"].value = "";
return state;
}];
})();
こちらのコードだと、確認画面から入力ページへ戻った際にドロップダウンの入力情報が消えてしまいます。コードを書き換え、戻った場合でも入力情報を保持することは可能でしょうか。
ご教示いただければ幸いです。どうぞよろしくお願いいたします。
dashboyさん、こんにちは。
ご質問に正面からお答えするものではありませんが、以下のやり方のように、選択肢を加えてバリデーションを実装すると、確認画面から戻っても入力情報は消えません。
①ドロップダウンリストの選択肢に「選択してください」を追加して、一番上に移動させ、初期値にする
②JavaScriptファイルに以下のコードを入力
(function () {
"use strict";
fb.events.form.created.push(function (state) {
state.fields.find(function (field) {
return field.code === 'drop_down1';
}).validations.push({
// ''内は対象となるフィールドコードを指す
params: [],
rule: 'drop_down_validation'
});
return state;
});
fb.addValidators = function (state) {
return {
drop_down_validation: {
getMessage: function getMessage(fieldCode, params) {
return '該当する項目を選択してください'; // エラーメッセージ
},
validate: function validate(value, params) {
return value !== '選択してください';
}
}
};
};
})();
※IE11でも動作することを確認しています。
system
(system)
クローズされました:
3
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。