我正在构建一个应用程序,当用户在输入框中输入无效值时,我想在其中显示一些错误。如果未发现错误,则将正确的值作为“条目”附加到 div。总共有 3 种情况显示错误:
- 输入值为空
- 输入值是一个数字
- 输入值已存在
这些错误与if else
语句一起显示。1.和 2. 很简单,但问题案例 (3.) 仅针对 class 的第一个元素进行验证.cat_entry
。
if(cat_input == '') { // generate errors
errorDisplay(error_input_empty);
} else if(!isNaN(cat_input)) {
errorDisplay(error_input_number);
} else if($('.cat_entry') == cat_input) { // THIS IS THE PROBLEMATIC LINE
// .cat_entry is the class of the entries that have been appended
errorDisplay(error_duplicate);
} else {
// stuff
};
所以我相信我需要一个 for 循环/ .each() (到目前为止没问题),但是我如何将它作为条件包含在 if 语句中?类似于.. if( for(i=0;i<$('.cat_entry').length;i++) { ... };
...当其中一个条目与输入值匹配时如何返回 true (或类似的东西),然后将返回值传递给 if 语句?
编辑: 这是一个带有相关代码的 jsFiddle。我用 $.inArray() 方法更新了它。我想尝试使用它而不是 for / .each() 循环。