我对这个场景比较陌生,我只是不明白。
所以我正在检查 IBAN 号码是否有效。我现在得到了那部分。但是现在我想显示一条消息,例如"IBAN 不行"和"IBAN ok"。
我尝试这样做的方法是创建一个空的span元素,并使用id更改该元素的内部HTML。
.HTML:
<div class="form-group">
<label for="confirm" class="cols-sm-2 control-<label">IBAN</label>
<div class="cols-sm-10">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-lock fa-lg" aria-hidden="true"></i></span>
<input type="text" class="form-control iban" name="iban" id="iban" required/>
<span id="message"></span>
</div>
</div>
<button id="checkiban" class="btn btn-primary btn-lg btn-block login-button" onclick="alertValidIBAN(null)">Check IBAN</button>
</div>
j查询:
function alertValidIBAN(iban) {
var ibanvalid = isValidIBANNumber(document.getElementById("iban").value);
if(ibanvalid === false) {
$("#message").html("IBAN onjuist").fadeOut(1000);
console.log("IBAN not ok");
}
if(ibanvalid === 1) {
$("#message").html("IBAN ok").fadeOut(1000);
console.log("IBAN ok");
}
}
所以现在如果我按下按钮并且 IBAN 无效,我会收到它不行的消息,这很好!然后,如果我再次按下按钮,则没有任何反应。
如果我然后刷新页面并输入有效的 IBAN,它会显示没问题的消息,这很好!然后,如果我再次按下按钮,则没有任何反应。
如果有人能帮我解决这个问题,那就太好了! :)
此致敬意
试试这个,添加一个 show 方法
if(ibanvalid === false) {
$("#message").show().html("IBAN onjuist").fadeOut(1000);
console.log("IBAN not ok");
}
if(ibanvalid === 1) {
$("#message").show().html("IBAN ok").fadeOut(1000);
console.log("IBAN ok");
}
}
JQuery fadeout(( 使元素不可见,因此第二次调用它时它会更改消息,但不显示它,因为它的不透明度为 0。你也需要调用 .show(( 函数才能使其可见,正如@AswinRamesh所说:
function alertValidIBAN(iban) {
var ibanvalid = isValidIBANNumber(document.getElementById("iban").value);
if(ibanvalid === false) {
$("#message").show().html("IBAN onjuist").fadeOut(1000);
console.log("IBAN not ok");
}
if(ibanvalid === 1) {
$("#message").show().html("IBAN ok").fadeOut(1000);
console.log("IBAN ok");
}
}