使用jquery在下拉列表中的月份

时间:2014-08-20 16:01:24

标签: jquery

我正在尝试使用Jquery在下拉列表中选择一个选项。 如果今天的日期小于15,则当前月份在下拉列表中选择为true。 如果今天的日期大于15,下一个月在下拉列表中选择为true。 (选择到下拉列表中的值)。

HTML

         <select class="availDropdown">
            <option value="">Month</option>
            <option value="Jan">Jan</option>
            <option value="Feb">Feb</option>
            <option value="March">March</option>
            <option value="April">April</option>
            <option value="May">May</option>
            <option value="June">June</option>
            <option value="July">July</option>
            <option value="August">August</option>
            <option value="September">September</option>
            <option value="October">October</option>
            <option value="November">November</option>
            <option value="December">December</option>
        </select>

1 个答案:

答案 0 :(得分:2)

这是一些纯粹的Javascript。我所做的只是为你的选择器添加一个id,所以我可以使用document.getElementById(id),因为我无法快速加载jQuery,但这个概念很简单易懂。

// Find the day of the month 
    var day = new Date().getDate();
// Find the month number (+1 since it starts at 0, and 0 is your 'select month' option)
    var month = new Date().getMonth() + 1;
// increase the month number if the day is bigger than 15
    if(day > 15){
        month++;
        if( month > 12 ) month = 1;
    }
// get the select object, list its options and find the one at the months position. 
// Set it to true.
    document
    .getElementById("select")
    .options[month]
    .selected = true;

修改

抱歉,我使用了错误的功能。 getDay()获取一周中的某一天,这导致了这种情况发生。使用getDate将返回该月的日期(1-31)。它现在有效。我还简化了一些代码,DRY和所有。