画面上部に緑のアラート(ノーティス)を表示するには

こんにちは。初質問の Toshi と申します。

kintoneを使っていると、下のスクリーンショットのように「緑のアラート(ノーティス : notice)」が表示されることがあります。

kintone APIを使った処理後に、「○○を実行しました」のような文面を、緑のアラートで表示させることはできないでしょうか。

もし表示させられるようなら、その表示時間を指定することはできますでしょうか。(標準では一瞬で消えるため、多くの場合何が書いてあるか理解できる前に消えています。3秒くらいは表示させられるといいのですが。)

「レコードにエラーを表示する」にありますように、eventオブジェクトのerrorプロパティに「○○を実行しました」を値としてセットすれば、「赤いアラート」として表示させることはできます。しかし、これではエラーが発生したかのような印象となってしまいます。「正常動作した」ということを伝えたいので、「緑のアラート」で表示したいのです。

あるいは、「赤いアラート」の色を変更する方法があれば、それでもかまいません。

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

Toshi Akazawa さん

 

submitイベント等におけるevent.errorへの仕込みからのnotifierに対してDOM操作で対応しようとすると、

 

.notifier-error-cybozu, .notifier-timeout-cybozu { background-color: #e74c3c; }

 

という指定がなされているので、これをいじることになりそうです。ただ、closeボタンが画像で入っていたので、そこが赤のまま残りそうでした。

 

代案としては、kintoneのトーンに合わせたいということであれば、プラグイン作成用に公開されているスタイルで、51-us-default.cssというファイルにメッセージの(赤イメージの)スタイルが

 

.kintoneplugin-alert {
position: relative;
display: block;
margin: 8px 0;
padding: 4px 18px;
background: #e74c3c;
color: #f6f6f6;
}

 

このように記載があるので、これを参考に緑イメージのメッセージのスタイルないしイベントを作るか、SweetAlertのようなライブラリを利用するかが考えられそうです。

Ryu Yamashita さん

コメントいただきありがとうございます。

DOM操作で対応しようかと考え、テストアプリ(文字列1行のフィールど1個のみ配置)を作製して、まずは通常の赤いアラートを出すようにしてみました。

— 先ほどの投稿は勘違いがありましたので、改めて検証の上、再投稿させていただきます。すみません m(…)m

— 以下、再投稿です。

例えば、レコード編集イベントの「イベント発生時に実行できる操作」一覧から「レコードにエラーを表示する」を読んでみますと、次のように書いてあります。

ハンドラーが event オブジェクトの error にエラーメッセージを代入して
event オブジェクトを return した場合、フィールドの値の書き換えと
編集可/不可の設定はキャンセルされ、画面の上部にエラーメッセージが
表示されます。

今回「フィールド値の変更」が実行された上で「緑のアラート」を出せたらよいなと考えておりました。しかし、「フィールド値の書き換え」がキャンセルさせる仕様ということなので、断念することにします。

お騒がせしてすみませんでした。

Sweet Alertも試してみました。

しかし、Not valid! と怒られてしまいました(^^;

もうちょっと修行して出直しますw

見た感じ、SweetAlertのスタイルシートが設定されてないように思えます。JavaScript/CSSカスタマイズの設定画面を確認されると良いかもしれません。