Bootstrap 3では、検証状態ごとにオプションのアイコンがありました。アイコンは、has-feedback
、has-success
、has-danger
などのクラスを使用して、入力の右側に表示されます。
valid-feedback
またはinvalid-feedback
クラスを使用してBootstrap 4でこの同じ機能を取得するにはどうすればよいですか?
ブートストラップ4にはアイコンが含まれておらず(グリフィコンは削除されています)、is-valid
およびis-invalid
の表示を制御する2つの検証状態(valid-feedback
およびinvalid-feedback
)があります。テキスト。
少し余分なCSSを使用すると、アイコンを入力内(右側)に配置し、is-valid
入力でis-invalid
またはform-control
を使用してその表示を制御できます。アイコンにはfontawesomeのようなフォントライブラリを使用します。 feedback-icon
に追加できる新しいvalid/invalid-feedback
クラスを作成しました。
.valid-feedback.feedback-icon,
.invalid-feedback.feedback-icon {
position: absolute;
width: auto;
bottom: 10px;
right: 10px;
margin-top: 0;
}
HTML
<div class="form-group position-relative">
<label for="input2">Valid with icon</label>
<input type="text" class="form-control is-valid" id="input2">
<div class="valid-feedback feedback-icon">
<i class="fa fa-check"></i>
</div>
<div class="invalid-feedback feedback-icon">
<i class="fa fa-times"></i>
</div>
</div>
.valid-feedback.feedback-icon,
.invalid-feedback.feedback-icon {
position: absolute;
width: auto;
bottom: 10px;
right: 10px;
margin-top: 0;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="form-group position-relative">
<label for="input2">Valid with icon</label>
<input type="text" class="form-control is-valid" id="input2">
<div class="valid-feedback feedback-icon">
<i class="fa fa-check"></i>
</div>
<div class="invalid-feedback feedback-icon">
<i class="fa fa-times"></i>
</div>
</div>
</div>
含むform-group
はposition:relative
であることに注意してください。
フォーム検証アイコンは組み込みですBootstrap 4.3.1、こちらのドキュメントを参照してください: https://getbootstrap.com/docs/4.3/components/forms/#custom-styles
クライアント側の検証には、ParsleyJSプラグインを使用できます。こちらのデモをご覧ください: https://jsfiddle.net/djibe89/tu0ap111/
Fake code