フォーム内のいくつかのフィールドを検証するためにjQueryを使用していますが、特に1つのフィールドで問題が発生しているようです(#inputTel
)。
間違った形式を入力すると、その下にエラーメッセージが表示されますが、これは問題ありませんが、正しい形式を入力するとメッセージが消えないという問題があります。
これが完全なデモを含むjsFiddleです。
これは問題のセクションです:
//Tel Validate
function is_valid_tel() {
$this = $("#inputTel");
var pattern = new RegExp("^\d{11}$");
if (pattern.test($this.val())) { // valid
if ($this.closest(".control-group").hasClass("error")) $this.closest(".control-group").removeClass("error");
$this.siblings(".help-inline").css("display", "none");
return true;
} else { // error
if (!$this.closest(".control-group").hasClass("error")) $this.closest(".control-group").addClass("error");
$this.siblings(".help-inline").css("display", "block");
return false;
}
}
これを除いて、他のすべてのフィールドは期待どおりに機能します。私のjQueryスキルは限られているので、これを解決する方法がわかりません。