首页 > 解决方案 > 如果任何字段有红色边框,我想禁用保存按钮

问题描述

我想禁用保存按钮,直到所有字段都有效,并且如果任何一个字段边框变为红色,则不启用。jsp 包含在更多的 jsp 中,我发现很难将表单/div 放入我的 java 脚本函数中

我正在尝试使用 jquery 动态获取表单/div id,但在 JavaScript 中它无法获取表单的 id

onkeyup="checkFieldWithRegExp(jQuery('#SUM-03-inputnumberOfChildren'), jQuery('#teleNumeric'), jQuery('#FO-E012-tableShowMarketingConsent'));


function checkFieldWithRegExp(valueField, regExpField, formIdField) {
    var regExp = regExpField.val();
    var regNumber = valueField.val();
    var formIdValue = $('#formIdField input:not(.hilightBorder)').length();

    if (regExp !== null && !new RegExp(regExp).test(regNumber)) {       
        valueField.addClass('hilightBorder');
        valueField.removeClass('hilightGreenBorder')
        $('SUM00bSaveButton').disabled=false;
    } else if(regExp !== null && new RegExp(regExp).test(regNumber)){
        valueField.addClass('hilightGreenBorder');
        valueField.removeClass('hilightBorder');
        if(formIdValue){
            $('SUM00bSaveButton').disabled=false;
        }
    } else {
        valueField.removeClass('hilightBorder');
    }   
}

我希望在页面加载时禁用保存,如果任何字段有红色边框,用户输入错误。我能得到一些帮助吗

标签: javascriptjqueryjsp

解决方案


我相信你正在处理错误的问题。

根据我对您要执行的操作的理解,一旦表单输入有效,您就可以启用一个按钮。(如我错了请纠正我)

您应该在后台编写一个函数来检查和验证用户填写的输入数据。如果所有数据都有效,则启用该按钮。如果无效,请禁用它。

每次有一个“onKeyUp”事件附加到每个表单输入元素时,您都可以运行此函数。


推荐阅读