javascript - 使用jquery blur时如何防止空输入字段被认为是错误的
问题描述
我正在制作一个函数来评估您是否插入了正确的答案。但是,如果您输入了错误的单词,然后转到另一个输入字段,它将评估您插入的单词,如果输入错误,它将变为红色。现在问题来了:当这个词变成红色时,你很可能转到另一个输入字段,这是因为它具有blur
jquery的功能。如果您单击前一个输入字段来纠正您的错误,它会将您刚刚单击以填写的空输入字段也视为错误输入字段(因为再次模糊)。我知道我必须创建一些东西来评估输入字段是否为空,如果是:不评估,如果是,评估。从我尝试做的事情来看,它没有用。这就是我现在所拥有的:
var sylInput = $('<input/>', {
'type': 'text',
'class': 'form-control syl-input',
'name': +c++,
'id': +idsyll++
}).on('blur', function() {
var cValue = $(this).val();
if (cValue === syllable) {
correctSylls.push(cValue);
console.log(correctSylls);
}
if (exercise.syllables.length === correctSylls.length) {
$(this).closest('.syll-row').find('input.syl-input').addClass('btn btn-success').removeClass('form-control').prop('disabled', true);
S.addRight();
S.playRight();
} else if (cValue !== syllable){
$(this).css({'color':'#e00413'});
S.playWrong();
S.addWrong();
}
我怎样才能做出这样的if
声明,应该放在哪里?该else if
语句还评估一个空的输入字段。
解决方案
这应该做欺骗。
.on('blur', function() {
var cValue = $(this).val();
if(cValue === "") {
return;
}
//rest of your code.
});
推荐阅读
- c# - 如何从soap服务c#中读取数据
- ios - EAGLContext presentRenderbuffer 导致死锁
- php - 一个函数的用户变量,在另一个函数中
- logging - 在 GCP 中更改 Stackdriver Logging 日志的标头
- python - 在Django(Python)中多次传递参数失败
- node.js - 如何使用 vue js 作为前端和 postgres 作为后端创建节点 js 应用程序
- java - 替换 @Autowired Httpservlet 为什么在 springbok 中自动装配 httpservlet 不是一个好习惯?
- node.js - UTF-8 SQL 搜索
- linux - 根据列的值保留唯一 ID?
- f# - 如何在 F# 中为自定义类型定义一元减号?