You need to sign in to do that
Don't have an account?
Diabling multiple fields using the single checkbox
Hi! Hello!
Can you help me on how can i use a single checkbox to disable multiple fields. I have this code below which disable the field {!Lead.Billing_House__c} when the checkbox {!Lead.Cpy_from_Installation_Address__c} is seleceted, however i want to disable more field using the same checkbox, and i cant use the same id because the system tells me already duplicate id.
<apex:pageBlockSection title="Billing Address" collapsible="false" columns="1">
<apex:inputCheckbox value="{!Lead.Cpy_from_Installation_Address__c}" onchange="document.getElementById('{!$Component.disablefield}'.disabled=this.checked"/>
<apex:inputField id="disablefield" value="{!Lead.Billing_House__c}"/>
<apex:inputField value="{!Lead.Billing_Apartment__c}"/>
<apex:inputField value="{!Lead.Billing_Street__c}"/>
<apex:inputField value="{!Lead.Billing_Subdivision__c}"/>
<apex:inputField value="{!Lead.Billing_City__c}"/>
<apex:inputField value="{!Lead.Billing_Zip_Code__c}"/>
</apex:pageBlockSection>
Thanks in AdvancE!
Del
Instead of diabling only the checkbox why dont you call a javascript script function and disable all the fields ?
--yvk
Hi,
Thanks for the suggestion, cann you give me a sample? :)
Thanks!
Del
Hi Del
I hope that this script might help you to solve your problem. This will disable all fields in Lead below when you check the checkbox named 'Check Me' and enable all the fields when you uncheck the checkbox
<!-- Script that disables all the field when you check the checkbox and disable it when you do viceversa -->
<script>
function disableAllFields(){
var f = document.getElementsByTagName('input');
if(document.getElementById('htmlChkBox').checked == true){
f[i].setAttribute('disabled',false)
}
}else{
for(var i=0;i<f.length;i++){
if(f[i].getAttribute('type')=='text'){
f[i].removeAttribute("disabled")
}
}
}
}
</script>
<apex:form >
<apex:pageBlock >
<apex:pageBlockSection title="Billing Address" collapsible="false" columns="1" >
<Input Type="checkbox" Name="Check me" id="htmlChkBox" onclick="disableAllFields();"> Check Me </Input>
<apex:inputField id="disablefield" value="{!Lead.country__c}" />
<apex:inputField value="{!Lead.city__c}"/>
<apex:inputField value="{!Lead.state__c}"/>
</apex:pageBlockSection>
</apex:pageBlock>
</apex:form>
</apex:page>