2

連絡先のクイック作成からアカウント名関連フィールドを削除する関数を作成しましたが、私の関数は Firefox では完全に動作しますが、クロムでは動作しません... これが私の関数です

function manageRequired(reqArr, disabledVal)
{
    var requiredLabel = '<span class="required">*</span>'; // for firefox
    var search_requiredLabel = '<span class="required"'; // searching string for firefox
    var form = "";

    for(var i = 0; i < document.forms.length; i++)
    {
        if(document.forms[i].id=='EditView')
        {
            form = 'EditView';
            break;
        }
        if(document.forms[i].id=='form_SubpanelQuickCreate_Contacts')
        {
            form = 'form_SubpanelQuickCreate_Contacts';
            break;
            }
        if(document.forms[i].id=='form_QuickCreate_Contacts')
        {
            form = 'form_QuickCreate_Contacts';
            break;
            }
        if(document.forms[i].id=='form_QuickCreate_Accounts')
        {
            form = 'form_QuickCreate_Accounts';
            break;
            }
    }
    for(var j = 0; j < reqArr.length; j++)
    {
        var flag = true;
        if (validate[form] != 'undefined') 
        {
            for(var i = 0; i < validate[form].length; i++)
            {
                if(validate[form][i][0] == reqArr[j].id && validate[form][i][2])
                {
                    if(disabledVal)
                    {
                        flag = false;
                        break;
                    }
                    else
                    {
                        validate[form][i][2] = false;
                    }
                }
            }
        }
        var labelNode = document.getElementById(reqArr[j].id + '_label');
        if(flag & disabledVal)
        {
            // we require the field now
            addToValidate(form, reqArr[j].id, reqArr[j].type, true,reqArr[j].label );
        }
        if(disabledVal)
        {
            if(labelNode != null && labelNode.innerHTML.indexOf(search_requiredLabel) == -1) // for IE replace search string
            {
                search_requiredLabel = '<SPAN class=required>';
            }
            if (labelNode != null && labelNode.innerHTML.indexOf(search_requiredLabel) == -1) 
            {
                labelNode.innerHTML = labelNode.innerHTML.replace(requiredLabel, '');
                labelNode.innerHTML = labelNode.innerHTML + requiredLabel;
            }
        }
        else
        {
            if(labelNode != null)
            {
                if(labelNode != null && labelNode.innerHTML.indexOf("<SPAN class=required>*</SPAN>") == -1 && labelNode.innerHTML.indexOf('<span class="required">*</span>') == -1 )// for that field which is unrequired
                {
                }
                else if(labelNode != null && labelNode.innerHTML.indexOf(requiredLabel) == -1) // for IE replace span string
                {
                    requiredLabel = "<SPAN class=required>*</SPAN>";
                }
                labelNode.innerHTML = labelNode.innerHTML.replace(requiredLabel, '');
            }
        }
    }
}

誰でもこの問題を解決するために私を助けてくれませんか...

4

1 に答える 1