创建下拉菜单的功能

时间:2014-03-03 06:45:13

标签: javascript html

所以我要说的第一件事就是学校,我不允许使用JQuery等等。

我想要做的是,编写一个函数,当我将其称为具有特定长度的下拉菜单时,创建日期的下拉菜单。

        function date(start, end) {

        var dateV ="";

        for(i=start;i<=end;i++)
            dateV += "<option value='"+i+"'>"+i+"</option>";

        document.write(dateV);
    }

Vars的开始和结束都是循环,作为一年的例子,我使用1900作为开始,2014年作为结束。

此功能是用外部文件(我们应该怎么做)编写的,但无法正常工作。但是如果我在HTML标题中编写 正常工作

我试着这样称呼它:

            Day:
        <select name="tag">
             <script type="text/javascript" src="myjsfile.js">
                date(1,31);
            </script>
        </select>

所以知道我现在想为什么它不在外部文件中但在标题中工作。 很多人已经告诉我document.write()可能是问题所在。如果这是我可以使用的其他功能的问题吗?。

编辑:

我怎么称呼它:

        <select name="tag" id="dd1">
             <script type="text/javascript">
                date(1,31,dd1);
            </script>
        </select>

那就是外部文件中的函数:

function date(start,end,div) {

var select1 = document.getElementById(div);

    for(i=start;i<=end;i++){
       var option = document.createElement("option");
       option.text = i;
       option.value= i;
       select1.add(option);
    }
}

第三个新参数是保持静态,因为我需要一个日期,月份和年份的下拉菜单,然后我每次都需要一个新的ID(或?)

2 个答案:

答案 0 :(得分:1)

           Day:

                <select name="tag" id="ddl">

                </select>


                <script>
                date(1,23);
                function date(start,end) 
                {

                        var select1 = document.getElementById("ddl");

                 for(i=start;i<=end;i++){
                var option = document.createElement("option");
                option.text = i;
                option.value= i;
                select1.add(option);
                }


                 }
                </script>
            Now its perfect JScript 
        Yes it does not use " $ " sign ,It is pure Javascript.There is no need of JQuery now.
        Explanation => 
        1)First i created variable "select1" which stores HTML element "ddl" (got it be its id).

        2)Then we have start and end value. So till the value ends , Create HTML element "option"  And store in it  i)Value to be in <option> tag and ii)Text in it.

        3) Then add that variable as child in the variable  "select1".


    //NEW CODE According to you
<html>
    <head>

    </head>

    <body>
        Day:
            <select name="tag" id="ddl">

            </select>


    <script src="stk.js" type="text/javascript">
    </script>
    <script>
    date(1,23); 
    </script>

    </body>
    </html>

//stk.js

function date(start,end) 
{
var select1 = document.getElementById("ddl");
for(i=start;i<=end;i++){
var option = document.createElement("option");
option.text = i;
option.value = i;
select1.add(option);
}               
}

答案 1 :(得分:0)

你可以这样管理,试试这段代码

在HTML代码中添加ID

    <select name="tag" id="dd"></select>

javascript

<script>

      function date(start, end) {

    var dateV ="";

    for(i=start;i<=end;i++)
        dateV += "<option value='"+i+"'>"+i+"</option>";
    document.getElementById('dd').innerHTML = dateV;

}
date(1, 10);
</script>

FIDDLE DEMO