jQuery pagelaod 上的输入字段存在问题

jQuery issue with input fields on pagelaod

我必须遵循代码,它工作得很好。除了在初始页面加载时,红色 X 是可见的。

JS

$('#email').keyup(function() {
var feedback = $("label[for='em']");
if($(this).val() === ''){
  feedback.hide();
} else {
  feedback.show();
}
});

CSS:

input[type="email"]:invalid + label::after{
font-family: fortawesome;
color:red;
content: "\f004";
padding-left:$l_global-padding;
}

HTML

<input id="email" type="email"required autofocus name="dieEmail"><label for="em"></label>

同时在页面加载时触发事件。

$('#email').keyup(function() {
  var feedback = $("label[for='em']");
  if($(this).val() === ''){
   feedback.hide();
  } else {
   feedback.show();
  }
}).trigger('keyup');//trigger on page load