调用另一个函数内的函数时遇到麻烦

|
<script language=\"JavaScript\">

    function formCheck() 
    {
        var getValues = new Array();

        getValues[0] = document.getElementById(\'jumpMenu\');
        getValues[1] = document.getElementById(\'fName\');
        getValues[2] = document.getElementById(\'lName\');
        getValues[3] = document.getElementById(\'fName\');
        getValues[4] = document.getElementById(\'streetAdr\');
        getValues[5] = document.getElementById(\'city\');
        getValues[6] = document.getElementById(\'state\');
        getValues[7] = document.getElementById(\'zipcode\');
        getValues[8] = document.getElementById(\'country\');
        getValues[9] = document.getElementById(\'dob_m\');

        if ( getValues[0].value == \'Select Title\' ) 
        {
            document.getElementById(\'jumpMenu\').style.backgroundColor=\'#FFD2D2\';
            return false;
        }
        else if ( getValues[1].value == \'\' ) 
        {
            document.getElementById(\'fName\').style.backgroundColor=\'#FFD2D2\';           
            document.getElementById(\'fNameError\').innerHTML=\'field is empty\';
            document.getElementById(\"fNameError\").style.fontSize=\"10px\";
            document.getElementById(\"fNameError\").style.color=\"red\";
            document.getElementById(\"fNameError\").style.display=\"inline\";
            return false;
        }
        else if ( getValues[2].value == \'\' ) 
        {
            document.getElementById(\"lName\").style.backgroundColor=\"#FFD2D2\";
            document.getElementById(\"lNameError\").innerHTML=\"field is empty\";
            document.getElementById(\"lNameError\").style.fontSize=\"10px\";
            document.getElementById(\"lNameError\").style.color=\"red\";
            return false;
        }
        else if ( getValues[4].value == \'\' ) 
        {
            document.getElementById(\"streetAdr\").style.backgroundColor=\"#FFD2D2\";
            document.getElementById(\"stNameError\").innerHTML=\"field is empty\";
            document.getElementById(\"stNameError\").style.fontSize=\"10px\";
            document.getElementById(\"stNameError\").style.color=\"red\";
            return false;
        }
        else if ( getValues[5].value == \'\' ) 
        {
            document.getElementById(\"city\").style.backgroundColor=\"#FFD2D2\";
            document.getElementById(\"cityError\").innerHTML=\"field is empty\";
            document.getElementById(\"cityError\").style.fontSize=\"10px\";
            document.getElementById(\"cityError\").style.color=\"red\";
            return false;
        }
        else if ( getValues[6].value == \'\' ) 
        {
            document.getElementById(\"state\").style.backgroundColor=\"#FFD2D2\";
            document.getElementById(\"stateError\").innerHTML=\"field is empty\";
            document.getElementById(\"stateError\").style.fontSize=\"10px\";
            document.getElementById(\"stateError\").style.color=\"red\";
            return false;
        }
        else if ( getValues[7].value == \'\' ) 
        {
            document.getElementById(\"zipcode\").style.backgroundColor=\"#FFD2D2\";
            document.getElementById(\"zipcodeError\").innerHTML=\"field is empty\";
            document.getElementById(\"zipcodeError\").style.fontSize=\"10px\";
            document.getElementById(\"zipcodeError\").style.color=\"red\";
            return false;
        }
    }



    function normalColor(val)
    {
        document.getElementById(val).style.backgroundColor=\"\";

    }

</script>
大家好, 好吧,我正在用JavaScript编写代码,如您所见,我正在执行表单验证...,所以我声明了数组,然后将日期放入数组中,然后使用if,else if语句以及使用innerHTML在div中显示数据来执行验证。容器。 但是这些代码显示了我不专业的工作..我真的很讨厌这个...所以我试图定义一个新功能,其中存储错误消息位不能正常工作。
function displayMsg(val)
{
        document.getElementById(val).innerHTML=\"field is empty\";
        document.getElementById(val).style.fontSize=\"10px\";
        document.getElementById(val).style.color=\"red\";
}
但是当我调用此函数时,它什么也没有给我
else if ( getValues[1].value == \'\' ) 
{
    document.getElementById(\'fName\').style.backgroundColor=\'#FFD2D2\';           
        displayMsg(fNameError);
        return false;
}
因此,请帮助我找出并给我一些提示,以使我的代码更专业,更出色。
已邀请:
也许您只是missing3左右的报价而已
    displayMsg(\"fNameError\");
关于使代码更好一点,您可以只对元素进行一次评估,而不必反复评估,因此,除此以外:
    function displayMsg(val)
    {
      document.getElementById(val).innerHTML=\"field is empty\";
      document.getElementById(val).style.fontSize=\"10px\";
      document.getElementById(val).style.color=\"red\";
    }
拥有这个
    function displayMsg(val)
    {
      var element = document.getElementById(val);
      element.innerHTML = \"field is empty\";
      element.style.fontSize = \"10px\";
      element.style.color = \"red\";
    }
可以说它更容易阅读,并且可能稍快一些。
我认为您忘记了引号。尝试像这样调用函数:
displayMsg(\"fNameError\");

要回复问题请先登录注册