0

我有两个代表年份间隔的下拉框。用户将从第一个年份中选择一个年份(比如 2002 年),下一个下拉框将自动填充等于或大于第一个年份(2002 年及以上)的年份。我相信我有正确的 javascript 代码 (year.js)。

这里是:

$("#first").change(function(){
    var val = $("#first option:selected").html();
    $("#second").html("");
    var d = new Date();
     var n = d.getFullYear();

    for (i=val; i<=n;i++){
        $("#second").append("<option>" + i + "</option>");
    }
});

这是我的html表单代码的一部分:

<body>
<script src="year.js"></script>

<select id= "first">
// Here, I gather my years from my database 
</select>


<select id= "second">
</select>

当我运行它时,我的第二个下拉菜单没有任何反应。我是否需要将其他内容加载到我的代码中,例如 JQuery?如果是这样,我该怎么做?抱歉,我对 JQuery 不是很熟悉。任何帮助将不胜感激。

4

2 回答 2

2

是的,您需要加载jQuery library才能使用 jQuery 函数。

jQuery library你必须在使用它的功能之前加载它。

例子

<script src="jquery.js"></script> //a local version 
    or
<script src="http://code.jquery.com/jquery-latest.min.js.js"></script>
<script src="year.js"></script>

从http://jquery.com/download/下载 jQuery 库

在 OP 关于http://jsfiddle.net/YNuna/1/的评论后更新

你已经jQuery library在小提琴中了。我在下面的图片中标记了它red color

在此处输入图像描述

还将您的代码包装在$(document).ready(function ()

$(document).ready(function () {
    $("#first").change(function () {
        var val = $("#first option:selected").html();
        $("#second").html("");
        var d = new Date();
        var n = d.getFullYear();

        for (i = val; i <= n; i++) {
            $("#second").append("<option>" + i + "</option>");
        }
    });
});
于 2013-10-08T01:37:59.137 回答
0

如果您从任何地方复制粘贴 javascript 代码并看到一个$标志,则一个好的经验法则是它使用 jQuery。

请参阅此处将其添加到您的页面:http ://learn.jquery.com/about-jquery/how-jquery-works/

于 2013-10-08T01:50:26.427 回答