Html 脚本错误';这是因为没有调试

Html 脚本错误';这是因为没有调试,html,Html,继续获取此错误: 未捕获的TypeError:无法调用null main.js:24的方法“appendChild” makingMySelect main.js:24 (匿名函数) 代码如下: window.addEventListener("DOMContentLoaded", function(){ function $(x){ var myElements = document.getElementById(x); return myElements; } // cre

继续获取此错误: 未捕获的TypeError:无法调用null main.js:24的方法“appendChild” makingMySelect main.js:24 (匿名函数) 代码如下:

window.addEventListener("DOMContentLoaded", function(){

function $(x){
    var myElements = document.getElementById(x);
    return myElements;
}
// create select field element and populate with options
function makingMySelect (){
    var formTag = document.getElementsByTagName("form");// array
    var selectLi = $("select");
    var makeSelect = document.createElement("select");
        makeSelect.setAttribute("id","peopleGoing");
    for(i=0,j=reservePeopleGoing.length;i<j;i++){
        var makeOption = document.createElement("option");
        var optText = reservePeopleGoing[i];
        makeOption.setAttribute("value", optText);
        makeOption.innerHTML = optText;
        makeSelect.appendChild(makeOption);
    }
    selectLi.appendChild(makeSelect);
}


var reservePeopleGoing = ["1","2","3","4","5"];
var placeToGo = ["Astrada's","AppleBees","Chili's","Outback","O'Charleys"]
makingMySelect ();
window.addEventListener(“DOMContentLoaded”,function()){
函数$(x){
var myElements=document.getElementById(x);
回髓;
}
//创建“选择字段”元素并填充选项
函数makingMySelect(){
var formTag=document.getElementsByTagName(“表单”);//数组
var selectLi=$(“选择”);
var makeSelect=document.createElement(“选择”);
setAttribute(“id”,“peopleGoing”);

对于(i=0,j=reservePeopleGoing.length;i在执行此部分之前进行检查:

if (selectLi)
    selectLi.appendChild(makeSelect);
因此,这将检查
selectLi
是否已经好了。然后添加内容。另外,您确定有
ID
select
的元素吗?不要混淆标记名之间的关系。:)


工作HTML代码

问题是您没有一个id为
select
id
元素。因此,我刚刚添加了以下代码:

<div id="select"></div>

注册链接后,它的工作。享受。完整的代码供您参考

<!doctype html>
<html manifest="/cache.manifest">
    <head>
        <meta charset="utf-8" />
        <meta keywords="Reserve,resteraunt,hotel" />
        <meta description="This app will let you reserve a spot at your favorite location" />
        <meta name="robots" content="index,follow" />
        <meta name="viewport" content="user-scalable=no, width=device-width" />
        <meta name="HandheldFriendly" content="True" />
        <meta name="MobileOptimized" content="320" />
        <meta name="viewport" content="target-densitydpi-dpi" />
        <link href="css/style.css" rel="stylesheet"/>
        <title>Make My Reservation</title>
    </head>
    <body>
        <header>
            <div class="container">
                <h1>My Reservation App</h1>
                <p>This app will let you make a reservation! </p>
            </div>
        </header>
        <h3>Ready?</h3>
        <p><a href= "addItem.html">Add A Reservation</a></p>
        <div id="select"></div>
    </body>
    <footer>
        <img src="img/Reservation_app_img.jpg"width= "100" height="100" title="Reservation Logo" />
        <p1>6-3-2013, Brian Stacks</p1>
    </footer>
    <script type="text/javascript" src="js/main.js"></script>
</html>

预订
我的预订应用程序
此应用程序将允许您进行预订

准备好的

2013年6月3日,布莱恩·斯塔克斯
您需要调试代码。同意@SLaks需要调试,如果您遇到错误,它必须告诉您哪里出错,这是解决问题的关键。祝您好运。
var myElements=document.getElementById(x);
myElements在选择id时?最好使用myElement@PraveenKumar我不能使用jQuery;好的。好的。忽略jQuery部分。:)我猜是说我的selectLi为空?试图用Praveen的答案修复,但仍然得到它是空的null@BrianStacks你能帮我们把整个脚本整理一下吗?@Praveen谢谢你帮我消除了错误,但它没有为我创建下拉列表?非常感谢!这是我的HTML索引文件中的一个错误。谢谢天才们的帮助!!Love all yaw!!您好,这是学校的一个项目,我没有像之前在帖子中所说的那样进行尽职调查和调试。@Praveen Kumar是正确的,没有正确的id供我的代码使用。同样,这可以通过调试我的代码来完成!