2017-04-05 25 views
0

嘿大家我想填充下拉列表與數組,但它不工作,但工作正常,當我在JSFiddle上使用相同的代碼。請幫助從JSFiddle工作的數組中填充下拉列表,但不能在本地機器上工作?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
<script type="text/javascript" src="js/jquery-1.9.1.js"> 
</script> 
<script type="text/javascript"> 

var select = document.getElementById("selectNumber"); 
var options = ["1", "2", "3", "4", "5"]; 
for(var i = 0; i < options.length; i++) { 
    var opt = options[i]; 
    var el = document.createElement("option"); 
    el.textContent = opt; 
    el.value = opt; 
    select.appendChild(el); 
} 
</script> 
</head> 

<body> 

<select id="selectNumber"> 
    <option>Choose a number</option> 
</select> 
</body> 
</html> 

當我使用警報框像下面

var select = document.getElementById("selectNumber"); 
var options = ["1", "2", "3", "4", "5"]; 
for(var i = 0; i < options.length; i++) { 
    var opt = options[i]; 
    var el = document.createElement("option"); 
    el.textContent = opt; 
    el.value = opt; 
    alert(); 
    select.appendChild(el); 
    alert(); 
} 

出現第一個警告框,但第二個警告框不會出現環路,即只有第一次迭代運行的終止在選擇給出。的appendChild致發光(EL);.

+0

控制檯中的任何錯誤? – Arg0n

+0

@ Arg0n控制檯上沒有錯誤或警告。但作爲一個新手,我不知道我在正確的地方,我去檢查元素,然後選擇空的控制檯選項卡。 – phpNoob

+0

@ Arg0n我收到以下錯誤TypeError:select在我刷新頁面時在控制檯上爲[Learn More]。 – phpNoob

回答

1

把你的JavaScript代碼中的document.ready功能是這樣的:

<script type="text/javascript"> 
$(document).ready(function() { 
var select = document.getElementById("selectNumber"); 
var options = ["1", "2", "3", "4", "5"]; 
for(var i = 0; i < options.length; i++) { 
    var opt = options[i]; 
    var el = document.createElement("option"); 
    el.textContent = opt; 
    el.value = opt; 
    select.appendChild(el); 
} 
}); 
</script> 

你的價值觀並沒有因爲追加被執行腳本後的DOM被初始化。將代碼放入document.ready函數是一種很好的做法。

相關問題