我使用包含在下拉列表中http://www.javascriptsource.com/forms/country-state-city-drop-down-list.html國家,州,市的Javascript下拉列表
// State lists
var states = new Array();
states['Canada'] = new Array('Alberta', 'British Columbia', 'Ontario');
states['Mexico'] = new Array('Baja California', 'Chihuahua', 'Jalisco');
states['United States'] = new Array('California', 'Florida', 'New York');
// City lists
var cities = new Array();
cities['Canada'] = new Array();
cities['Canada']['Alberta'] = new Array('Edmonton', 'Calgary');
cities['Canada']['British Columbia'] = new Array('Victoria', 'Vancouver');
cities['Canada']['Ontario'] = new Array('Toronto', 'Hamilton');
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['United States'] = new Array();
cities['United States']['California'] = new Array('Los Angeles', 'San Francisco');
cities['United States']['Florida'] = new Array('Miami', 'Orlando');
cities['United States']['New York'] = new Array('Buffalo', 'new York');
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] = newOption(newOptions[i], newValues[i]);
}
}
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();
});
Head < script type = "text/javascript"
src = "countryStateCity.js" > <</script > Body < fieldset style = "width: 230px;" > <legend><strong>Make your selection</strong></legend> <p> <form name="test" method="POST" action="processingpage.php">
<table>
<tr>
<td style="text-align: left;">Country:</td>
<td style="text-align: left;">
<select name="country" id="country" onchange="setStates();">
<option value="Canada">Canada</option>
<option value="Mexico">Mexico</option>
<option value="United States">United States</option>
</select>
</td>
</tr><tr>
<td style="text-align: left;">State:</td>
<td style="text-align: left;">
<select name="state" id="state" onchange="setCities();">
<option value="">Please select a Country</option>
</select>
</td>
</tr><tr>
<td style="text-align: left;">City:</td>
<td style="text-align: left;">
<select name="city" id="city">
<option value="">Please select a Country</option>
</select>
</td>
</tr>
</table>
</form> < /fieldset>
我已經得到了代碼工作正常,但只有小的內容。當我加載所有國家時,州&地區,&城市&城鎮into countryStateCity.js文件我的電腦用完內存。
「countryStateCity.js」文件很大。如果我列出所有國家和所有州&地區和城市&以「A」&「B」開頭的國家的城鎮一切正常,但如果我添加城市&以「C」開頭的城鎮系統失敗。
我需要將源文件分解爲每個與此相似的國家/地區1;
src="country/Canada.js"
src="country/Mexico.js"
src="country/United States.js"
我想Javascript功能來查找文件名稱,如國家/ Canada.js,而不是發現整個世界文件中的名稱。
有人可以爲我提供修正的「Javascript」編碼嗎?
我就從服務器通過AJAX加載數據。 –
StackOverlfow不是免費的編寫代碼或數據結構服務 – charlietfl
開發人員信任堆棧溢出來幫助解決編碼問題並使用堆棧溢出作業找到工作機會。我們致力於讓互聯網變得更加美好,我們的產品旨在豐富開發人員的職業生涯並使其成長。 – user225359