为什么我的按钮什么都没做?

时间:2014-01-12 17:50:52

标签: javascript html

我正在尝试使用HTML来调用外部JavaScript文件中的函数。 JavaScript文件名为" javascript.js"。

这是我的HTML代码:

<html>
<head>
    <link href="style.css" rel="stylesheet" type="text/css">
    <script type="text/javascript" src="javascript.js">
    </script>
    <script
        // Calling the Google Maps API
    </script>

    <script>
        <!-- JavaScript to load Google Maps -->
    </script>
</head>

<body>
    <div class="content">
        <div id="googleMap"></div> <!--don't have to worry about this -->
        <div id="right_pane_results">hi</div> <!--don't have to worry about this -->
        <div id="bottom_pane_options">
            <button onclick="todaydate()">Try It</button>
        </div>
    </div>

</body>

...和我的JavaScript代码(我从互联网上获得的东西只是为了测试):

function todaydate() {
    var today_date=new Date()
    var myyear=today_date.getYear()
    var mymonth=today_date.getMonth() + 1
    var mytoday=today_date.getDate()
    document.write("<h1>"+myyear+"/"+mymonth+"/"+mytoday+"/h1">)
}

在我本地运行的网页上,按钮显示,但点击它时没有任何反应。这与我的代码有关吗?

提前致谢, 约什

4 个答案:

答案 0 :(得分:2)

我想这与您的语法错误有关:

document.write("<h1>"+myyear+"/"+mymonth+"/"+mytoday+"</h1>")

请注意最后一次引用是在>之后(并且您还忘记了结束<的{​​{1}})

答案 1 :(得分:2)

该功能内部有2个错误。 >需要在引号内,并且<之前需要/h1

替换此行:

document.write("<h1>"+myyear+"/"+mymonth+"/"+mytoday+"/h1">)

用这个

document.write("<h1>"+myyear+"/"+mymonth+"/"+mytoday+"</h1>")

它应该有用。

答案 2 :(得分:1)

document.write("<h1>"+myyear+"/"+mymonth+"/"+mytoday+"</h1>")

这有效!

答案 3 :(得分:1)

正如其他答案提到的语法问题在document.write语句中。

除此之外,使用getFullYear()将年份作为getYear() is Deprecated

使您的代码更清洁的其他一些做法:

  • 在声明结尾处使用semi-colan
  • 使用良好的命名惯例

Here is Demo

function getTodayDate() {
    var todayDate=new Date();
    var myYear=todayDate.getFullYear();
    var myMonth=todayDate.getMonth() + 1;
    var myDay=todayDate.getDate();
    document.write("<h1>"+myYear+"/"+myMonth+"/"+myDay+"</h1>");
}