2012-10-17 66 views
8

我在代表幾個月的html中有2個下拉列表。所以我想要一個像下面的驗證。在html中的月份選擇下拉列表,javascript

如果我將選擇第一個下拉月份作爲四月,那麼下一個下拉菜單應該從四月份開始。如果第一個更改爲6月,那麼第二個更改爲6月。

<div id="head2" style="width:15%;float:right;margin-left:5px;"> 
    <select id='gMonth2' onchange="show_month()"> 
    <option value=''>--Select Month--</option> 
    <option selected value='1'>Janaury</option> 
    <option value='2'>February</option> 
    <option value='3'>March</option> 
    <option value='4'>April</option> 
    <option value='5'>May</option> 
    <option value='6'>June</option> 
    <option value='7'>July</option> 
    <option value='8'>August</option> 
    <option value='9'>September</option> 
    <option value='10'>October</option> 
    <option value='11'>November</option> 
    <option value='12'>December</option> 
    </select> 
    </div> 

<div id="head1" style="width:15%;float:right;margin-left:5px;"> 
     <select id='gMonth1'> 
    <option value=''>--Select Month--</option> 
    <option selected value='1'>Janaury</option> 
    <option value='2'>February</option> 
    <option value='3'>March</option> 
    <option value='4'>April</option> 
    <option value='5'>May</option> 
    <option value='6'>June</option> 
    <option value='7'>July</option> 
    <option value='8'>August</option> 
    <option value='9'>September</option> 
    <option value='10'>October</option> 
    <option value='11'>November</option> 
    <option value='12'>December</option> 
    </select> 
    </div> 

和功能將是 功能show_month() { // }

我應該如何編寫功能?

回答

4

易於使用jQuery:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script> 

<script> 
$(function(){ 
    $('#gMonth2').change(function(){ 
    var month = $(this).val(); 
    $('#gMonth1').val(month); 
    }); 
}); 
</script> 

並跳過第一選擇onChange事件......

工作示例這裏:http://jsfiddle.net/sCnEZ/1/

+0

thnkx,但我怎麼會改變屬性爲「選擇」?現在我得到的結果,但仍然顯示爲1月1日,如果我點擊下拉,然後選定的月份以藍色突出顯示。但我需要這個月直接來。它不應該每次都會顯示一月份。 – user1638279

+0

@ user1638279你是什麼意思,你在一月份的選項中使用代碼中的選定屬性,最初將選擇哪個月從頭開始選擇。如果你想讓函數顯示CURRENT蛾,那麼這是另一個問題,而不是你開始。 – jtheman

+0

@ user1638279在我的例子中,我正在使用change()事件。你當然也可以嘗試其他事件,如懸停(),模糊()等等http://api.jquery.com/category/events/ – jtheman

0

你的JS功能可能是這樣的:

function show_month(obj) { 
    document.getElementById('gMonth1').selectedIndex = obj.selectedIndex; 
} 

您應該將onchange="show_month()"更改爲onchange="show_month(this)"

看看這個jsfiddle

相關問題