<!-- Paste this code into an external JavaScript file named: countryStateCity.js  -->

/* This script and many more are available free online at
The JavaScript Source :: http://javascript.internet.com
Created by: Michael J. Damato :: http://developing.damato.net/ */

// State lists
var states = new Array();

states['India'] = new Array('All','West Bengal','Andaman & Nicobar Islands','Andhra Pradesh','Arunachal Pradesh','Assam','Bihar','Chhattisgarh','Chandigarh','Dadra And Nagar Haveli','Delhi','Daman And Diu','Goa','Gujarat','Haryana','Himachal Pradesh','Jammu and Kashmir','Jharkhand','Karnataka','Kerala','Lakshadweep','Madhya Pradesh','Maharashtra','Manipur','Meghalaya','Mizoram','Nagaland','Orissa','Punjab','Puducherry','Rajasthan','Sikkim','Tamil Nadu','Tripura','Uttar Pradesh','Uttarakhand');
states['United States'] = new Array('Alabama','Alaska','Arizona','Arkansas','California','Georgia','Hawaii','Illinois','Kentucky','Massachusetts','Michigan','Minnesota','Nevada','New Hampshire','New Jersey','Pennsylvania','Texas','Washington','other');
states['Canada'] = new Array('Alberta','British Columbia','Ontario','other');
states['Australia'] = new Array('Australia');
states['Bangladesh'] = new Array('Bangladesh');
states['Dubai'] = new Array('Dubai');
states['England'] = new Array('England');
states['Hong Kong'] = new Array('Hong Kong');
states['Indonesia'] = new Array('Indonesia');
states['Kuwait'] = new Array('Kuwait');
states['Mexico'] = new Array('Baja California','Chihuahua','Jalisco','other');
states['New Zealand'] = new Array('New Zealand');
states['Pakistan'] = new Array('Pakistan');
states['Qatar'] = new Array('Qatar');
states['Srilanka'] = new Array('Srilanka');
states['Singapore'] = new Array('Singapore');
states['South Africa'] = new Array('South Africa');
states['Switzerland'] = new Array('Switzerland');
states['Saudi Arabia'] = new Array('Saudi Arabia');
states['Other'] = new Array('Other');


// City lists
var cities = new Array();

cities['India'] = new Array();
cities['India']['All'] = new Array();
cities['India']['West Bengal']         			 = new Array('Birbhum','Darjeeling','East Midnapur','West Midnapur','Hooghly','Howrah','Jalpaiguri','Coochbehar','Kolkata','Malda','Murshidabad','Nadia','North Dinajpur','North 24 Parganas','Purulia','South Dinajpur','South 24 Parganas', 'Bardhaman','Bankura');
cities['India']['Gujarat']         				 = new Array('Ahmedabad','Amreli District','Anand','Banaskantha','Bharuch','Bhavnagar','Dahod','The Dangs','Gandhinagar','Jamnagar','Junagadh','Kutch','Kheda','Mehsana','Narmada','Navsari','Patan','Panchmahal','Porbandar','Rajkot','Sabarkantha','Surendranagar','Surat','Vadodara','Valsad');
cities['India']['Andaman & Nicobar Islands'] = new Array('Port Blair');
cities['India']['Andhra Pradesh']   		 = new Array('Hyderabad','Vijaywada','Adilabad','Anantapur','Chittoor','East Godavari','Guntur','Hyderabad','Kadapa(YSR)','Karimnagar','Khammam','Krishna','Kurnool','Mahbubnagar','Medak','Nalgonda','Nellore','Nizamabad','Prakasam','Rangareddi','Srikakulam','Vishakhapatnam','Vizianagaram','Warangal','West Godavari');
cities['India']['Arunachal Pradesh']		 = new Array('Itanagar','Anjaw District','Changlang District','East Kameng','East Siang','Kurung Kumey','Lohit District','Lower Dibang Valley','Lower Subansiri','Papum Pare','Tawang District','Tirap District','Upper Dibang Valley','Upper Subansiri','Upper Siang','West Kameng','West Siang');
cities['India']['Assam']          			 = new Array('Dispur','Guwhati','Barpeta','Bongaigaon','Cachar','Darrang','Dhemaji','Dhubri','Dibrugarh','Goalpara','Golaghat','Hailakandi','Jorhat','Karbi Anglong','Karimganj','Kokrajhar','Lakhimpur','Marigaon');
cities['India']['Bihar']         			 = new Array('Araria','Aurangabad','Banka','Begusarai','Bhagalpur','Bhojpur','Buxar','Darbhanga','Purba Champaran','Gaya','Gopalganj','Jamui','Jehanabad','Khagaria','Kishanganj','Kaimur','Katihar','Lakhisarai','Madhubani','Munger','Madhepura','Muzaffarpur','Nalanda','Nawada','Patna','Purnia','Rohtas','Saharsa','Samastipur','Sheohar','Sheikhpura','Saran','Sitamarhi','Supaul','Siwan','Vaishali','Pashchim Champaran');
cities['India']['Chhattisgarh']         	 = new Array('Bastar','Bilaspur','Dantewada','Dhamtari','Durg','Jashpur','Janjgir-Champa','Korba','Koriya','Kanker','Kawardha','Mahasamund','Raigarh','Rajnandgaon','Raipur','Surguja');
cities['India']['Gujarat']         			 = new Array('Ahmedabad','Amreli District','Anand','Banaskantha','Bharuch','Bhavnagar','Dahod','The Dangs','Gandhinagar','Jamnagar','Junagadh','Kutch','Kheda','Mehsana','Narmada','Navsari','Patan','Panchmahal','Porbandar','Rajkot','Sabarkantha','Surendranagar','Surat','Vadodara','Valsad');
cities['India']['Haryana']         			 = new Array('Ahmedabad','Amreli District','Anand','Banaskantha','Bharuch','Bhavnagar','Dahod','The Dangs','Gandhinagar','Jamnagar','Junagadh','Kutch','Kheda','Mehsana','Narmada','Patan','Panchmahal','Porbandar','Rajkot','Sabarkantha','Surendranagar','Surat','Vadodara','ValsadS');
cities['India']['Himachal Pradesh']          = new Array('Bilaspur','Chamba','Hamirpur','Kangra','Kinnaur','Kulu','Lahaul and Spiti','Mandi','Shimla','Sirmaur','Solan','Una');
cities['India']['Goa']        				  = new Array('North Goa','South Goa');
cities['India']['Jammu and Kashmir']          = new Array('Anantnag','Badgam','Bandipore','Baramula','Doda','Jammu','Kargil','Kathua','Kupwara','Leh','Poonch','Pulwama','Rajauri','Srinagar','Samba','Udhampur');
cities['India']['Jharkhand']         				 = new Array('Bokaro','Chatra','Deoghar','Dhanbad','Dumka','Purba Singhbhum','Garhwa','Giridih','Godda','Gumla','Hazaribagh','Koderma','Lohardaga','Pakur','Palamu','Ranchi','Sahibganj','Pashchim Singhbhum','Ramgarh District');
cities['India']['Karnataka']         				 = new Array('Bidar','Belgaum','Bijapur','Bagalkot','Bellary','Bangalore Rural','Bangalore Urban','Chamarajnagar','Chikmagalur','Chitradurga','Davanagere','Dharwad','Dakshina Kannada','Gadag','Gulbarga','Hassan','Haveri','Kodagu');
cities['India']['Delhi']         				 = new Array('Central Delhi','New Delhi','North Delhi','North East Delhi','North West Delhi','South Delhi','South West Delhi','West Delhi');
cities['India']['West Bengal']         			 = new Array('Birbhum','Darjeeling','East Midnapur','West Midnapur','Hooghly','Howrah','Jalpaiguri','Coochbehar','Kolkata','Malda','Murshidabad','Nadia','North Dinajpur','North 24 Parganas','Purulia','South Dinajpur','South 24 Parganas', 'Bardhaman','Bankura');
cities['India']['Gujarat']         				 = new Array('Ahmedabad','Amreli District','Anand','Banaskantha','Bharuch','Bhavnagar','Dahod','The Dangs','Gandhinagar','Jamnagar','Junagadh','Kutch','Kheda','Mehsana','Narmada','Navsari','Patan','Panchmahal','Porbandar','Rajkot','Sabarkantha','Surendranagar','Surat','Vadodara','Valsad');

cities['India']['Madhya Pradesh']         				 = new Array('Balaghat','Barwani','Betul','Bhind','Bhopal','Chhatarpur','Chhindwara','Damoh','Datia','Dewas','Dhar','Dindori','Guna','Gwalior','Harda','Hoshangabad','Indore','Jabalpur','Jhabua','Katni','Khandwa (East Nimar)','Khargone (West Nimar)','Mandla','Mandsaur','Morena','Narsinghpur','Neemuch','Panna','Rewa','Rajgarh','Ratlam','Raisen','Sagar','Satna','Sehore','Seoni','Shahdol','Shajapur','Sheopur','Shivpuri','Sidhi','Tikamgarh','Ujjain','Umaria','Vidisha');

cities['India']['Maharashtra']         				 = new Array('Ahmednagar','Akola','Amrawati','Aurangabad','Bhandara','Beed','Buldhana','Chandrapur','Dhule','Gadchiroli','Gondiya','Hingoli','Jalgaon','Jalna','Kolhapur','Latur','Mumbai City','Mumbai suburban','Nandurbar','Nanded','Nagpur','Nashik','Osmanabad','Parbhani','Pune','Raigad','Ratnagiri','Sindhudurg','Sangli','Solapur','Satara','Thane','Wardha','Washim','Yavatmal');

cities['India']['Manipur']         				 = new Array('Bishnupur','Churachandpur','Chandel','Imphal East','Senapati','Tamenglong','Thoubal','Ukhrul','Imphal West');

cities['India']['Meghalaya']         				 = new Array('East Garo Hills','East Khasi Hills','Jaintia Hills','Ri-Bhoi','South Garo Hills','West Garo Hills','West Khasi Hills');

cities['India']['Mizoram']         				 = new Array('Aizawl','Champhai','Kolasib','Lawngtlai','Lunglei','Mamit','Saiha','Serchhip');

cities['India']['Nagaland']         				 = new Array('Dimapur','Kohima','Mokokchung','Mon','Phek','Tuensang','Wokha','Zunheboto');

cities['India']['Orissa']         				 = new Array('Angul','Boudh','Bhadrak','Bolangir','Bargarh','Baleswar','Cuttack','Debagarh','Dhenkanal','Ganjam','Gajapati','Jharsuguda','Jajapur','Jagatsinghpur','Khordha','Kendujhar','Kalahandi','Kandhamal','Koraput','Kendrapara','Malkangiri','Mayurbhanj','Nabarangpur','Nuapada','Nayagarh','Puri','Rayagada','Sambalpur','Subarnapur','Sundargarh');

cities['India']['Pondicherry']         				 = new Array('Karaikal','Mahe','Puducherry','Yanam');

cities['India']['Punjab']         				 = new Array('Amritsar','Bathinda','Firozpur','Faridkot','Fatehgarh Sahib','Gurdaspur','Hoshiarpur','Jalandhar','Kapurthala','Ludhiana');

cities['India']['Rajasthan']         				 = new Array('Ajmer','Alwar','Bikaner','Barmer','Banswara','Bharatpur','Baran','Bundi','Bhilwara','Churu','Chittorgarh','Dausa','Dholpur','Dungapur','Ganganagar','Hanumangarh','Juhnjhunun','Jalore','Jodhpur','Jaipur','Jaisalmer','Jhalawar','Karauli','Kota','Nagaur','Pali','Pratapgarh','Rajsamand','Sikar','Sawai Madhopur','Sirohi','Tonk','Udaipur');

cities['India']['Sikkim']         				 = new Array('East Sikkim','North Sikkim','South Sikkim','West Sikkim');

cities['India']['Tamil Nadu']         				 = new Array('Ariyalur','Chennai','Coimbatore','Cuddalore','Dharmapuri','Dindigul','Erode','Kanchipuram','Kanyakumari','Karur','Madurai','Nagapattinam','The Nilgiris','Namakkal','Perambalur','Pudukkottai','Ramanathapuram','Salem','Sivagangai','Tiruppur','Tiruchirappalli','Theni','Tirunelveli','Thanjavur','Thoothukudi','Thiruvallur','Thiruvarur','Tiruvannamalai','Vellore','Villupuram');

cities['India']['Tripura']         				 = new Array('Dhalai','North Tripura','South Tripura','South Tripura');

cities['India']['Uttarakhand']         				 = new Array('Almora','Bageshwar','Chamoli','Champawat','Dehradun','Haridwar','Nainital','Pauri Garhwal','Pithoragharh','Rudraprayag','Tehri Garhwal','Udham Singh Nagar','Uttarkashi');

cities['India']['Uttar Pradesh']         				 = new Array('Agra','Allahabad','Aligarh','Ambedkar Nagar','Auraiya','Azamgarh','Barabanki','Badaun','Bagpat','Bahraich','Bijnor','Ballia','Banda District','Balrampur','Bareilly','Basti','Bulandshahr','Chandauli','Chitrakoot','Deoria','Etah','Etawah','Firozabad','Farrukhabad','Fatehpur','Faizabad','Gautam Buddha Nagar','Gonda','Ghazipur','Gorkakhpur','Ghaziabad','Hamirpur','Hardoi','Mahamaya Nagar','Mahamaya Nagar','Jhansi','Jalaun','Jyotiba Phule Nagar','Jaunpur District','Kanpur Dehat','Kannauj','Kanpur Nagar','Kaushambi','Kushinagar','Lalitpur','Lakhimpur Kheri','Lucknow','Mau','Meerut','Maharajganj','Mahoba','Mirzapur','Moradabad','Mainpuri','Mathura','Muzaffarnagar','Pilibhit','Pratapgarh','Rampur','Rae Bareli','Saharanpur','Sitapur','Shahjahanpur','Sant Kabir Nagar','Siddharthnagar','Sonbhadra','Sant Ravidas Nagar','Sultanpur','Shravasti','Unnao','Varanasi');

cities['United States'] = new Array();
cities['United States']['Alabama'] 			= new Array('Birmingham','Other');
cities['United States']['Alaska']    			= new Array('Anchorage','Other');
cities['United States']['Arizona']  			 = new Array('Phoenix','Tucson','Other');
cities['United States']['Arkansas']  			 = new Array('Springdale','Other');
cities['United States']['California']  			 = new Array('Los Angeles','San Diego','San Jose','San Francisco','Other');
cities['United States']['Georgia']  			 = new Array('Atlanta','Other');
cities['United States']['Hawaii']  			 = new Array('Honolulu','Other');
cities['United States']['Illinois']  			 = new Array('Chicago','Aurora','Other');
cities['United States']['Kentucky']  			 = new Array('Lousville','Other');
cities['United States']['Massachusetts']  			 = new Array('Boston','Worcester','Other');
cities['United States']['Michigan']  			 = new Array('Detroit','Other');
cities['United States']['Minnesota']  			 = new Array('Minneapolis','Saintpaul','Other');
cities['United States']['Nevada']  			 = new Array('Las Vegas','Other');
cities['United States']['New Hampshire']  			 = new Array('Manchester','Nashua','Other');
cities['United States']['New Jersey']  			 = new Array('Newark','Jersey City','Other');
cities['United States']['Pennsylvania']  			 = new Array('Philadelphia','Pittsburgh','Other');
cities['United States']['Texas']  			 = new Array('Houston','Dallas','Other');
cities['United States']['Washington']  			 = new Array('Seattle','vancouver','Other');
cities['United States']['Other']  			 = new Array('Other');


cities['Canada'] = new Array();
cities['Canada']['Alberta']          = new Array('Edmonton','Calgary','Other');
cities['Canada']['British Columbia'] = new Array('Victoria','Vancouver','Other');
cities['Canada']['Ontario']          = new Array('Toronto','Hamilton','Other');
cities['Canada']['Other']          = new Array('Other');

cities['Australia'] = new Array();
cities['Australia']['Australia']          = new Array('Australia');

cities['Bangladesh'] = new Array();
cities['Bangladesh']['Bangladesh']          = new Array('Bangladesh');

cities['Dubai'] = new Array();
cities['Dubai']['Dubai']          = new Array('Dubai');

cities['England'] = new Array();
cities['England']['England']          = new Array('England');

cities['Hong Kong'] = new Array();
cities['Hong Kong']['Hong Kong']          = new Array('Hong Kong');

cities['Indonesia'] = new Array();
cities['Indonesia']['Indonesia']          = new Array('Indonesia');

cities['Kuwait'] = new Array();
cities['Kuwait']['Kuwait']          = new Array('Kuwait');

cities['Mexico'] = new Array();
cities['Mexico']['Baja California'] 			= new Array('Tijauna','Mexicali');
cities['Mexico']['Chihuahua']      				 = new Array('Ciudad Juárez','Chihuahua');
cities['Mexico']['Jalisco']        				 = new Array('Guadalajara','Chapala');
cities['Mexico']['Other']        				 = new Array('Other');

cities['New Zealand'] = new Array();
cities['New Zealand']['New Zealand']          = new Array('New Zealand');

cities['Pakistan'] = new Array();
cities['Pakistan']['Pakistan']          = new Array('Pakistan');

cities['Qatar'] = new Array();
cities['Qatar']['Qatar']          = new Array('Qatar');

cities['Srilanka'] = new Array();
cities['Srilanka']['Srilanka']          = new Array('Srilanka');

cities['Singapore'] = new Array();
cities['Singapore']['Singapore']          = new Array('Singapore');

cities['South Africa'] = new Array();
cities['South Africa']['South Africa']          = new Array('South Africa');

cities['Switzerland'] = new Array();
cities['Switzerland']['Switzerland']          = new Array('Switzerland');

cities['Saudi Arabia'] = new Array();
cities['Saudi Arabia']['Saudi Arabia']          = new Array('Saudi Arabia');

cities['Other'] = new Array();
cities['Other']['Other']          = new Array('Other');

function setStates() {
 cntrySel = document.getElementById('country');
 stateList = states[cntrySel.value];
 changeSelect('state', stateList, stateList);
 setCities();
}

function setCities() {
 cntrySel = document.getElementById('country');
 stateSel = document.getElementById('state');
 cityList = cities[cntrySel.value][stateSel.value];
 changeSelect('city', cityList, cityList);
}

function changeSelect(fieldID, newOptions, newValues) {
 selectField = document.getElementById(fieldID);
 selectField.options.length = 0;
 for (i=0; i<newOptions.length; i++) {
   selectField.options[selectField.length] = new Option(newOptions[i], newValues[i]);
 }
}

// Multiple onload function created by: Simon Willison
// http://simonwillison.net/2004/May/26/addLoadEvent/
function addLoadEvent(func) {
 var oldonload = window.onload;
 if (typeof window.onload != 'function') {
   window.onload = func;
 } else {
   window.onload = function() {
     if (oldonload) {
       oldonload();
     }
     func();
   }
 }
}

addLoadEvent(function() {
 setStates();
});
// JavaScript Document
