我有一个表单,用户在其中添加行,并且每行上都有输入,用户在其中键入值,然后翻译值出现在其旁边。查找通过 JavaScript 数组进行。
其工作原理的简化示例如下:https://jsfiddle.net/kc4fes2w/7/
在此示例中,每一行只有一个用户输入的值,除此之外,还有与该用户输入的值关联的描述(如果数组中存在这样的翻译)。 (在示例中,它仅包含 XXX 和 YYY)
如果在数组中找不到任何用户输入的值,我想阻止提交表单。换句话说,如果 desc
div 曾经显示“未找到”,那么我不希望用户能够提交表单。
这是我的尝试:
Javascript:
function checkform(fm) {
var desc = $("#desc");
if (desc.text().indexOf("not found") !== -1) {
alert('You have invalid value(s). Please correct this.');
}
}
HTML:
<input type="submit" onsubmit="return checkform(); event.preventDefault();" />
正如您在 fiddle 中看到的那样,这不起作用。
最佳答案
当您不希望表单提交完成时,返回false
:
function checkform() {
var desc = $("#desc");
if (desc.text().indexOf("not found") !== -1) {
alert('You have invalid value(s). Please correct this.');
return false;
}
}
<input type="submit" onclick="return checkform();" />
关于javascript - 如果在数组中找不到任何输入值,则阻止表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33112992/