2012-01-03 92 views
0

我有两个下拉菜单 - 一个月和一年 - 以及一个按钮。当用户点击按钮时,我想获取选定的月份值和年份值,并将它们作为查询字符串传递到如下URL:https://mysite.com/events.aspx?my=may2012获取seleceted下拉选项值jquery

如何使用jQuery或Javascript获取这些值?

<div id="datepicker"></div> 
<div class="calendForm"> 
    <span class="inpMonth"> 
     <select> 
      <option selected="selected">September</option> 
     <option>August</option> 
     <option>July</option> 
     <option>June</option> 
     <option>May</option> 
     <option>April</option> 
     <option>March</option> 
     <option>February</option> 
     <option>January</option> 
     <option>December</option> 
     <option>November</option> 
     <option>October</option> 
     </select> 
    </span> 
    <span class="inpYear"> 
     <select> 
      <option selected="selected">2012</option> 
      <option>2013</option> 
      <option>2014</option> 
     <option>2015</option> 
     </select> 
    </span> 
    <a href="#" type="submit" class="btnBlue"><span>GO</span></a> 
</div><br /> 

回答

1

T. Stone的答案有错误。选择器应该有一个点。 除此之外 - 伟大的答案!

See my fiddle

<script> 
$(function(){$(".btnBlue").click(function(){ 
    window.location = "https://mysite.com/events.aspx?my=" + $(".inpMonth select").val().toLowerCase() + $(".inpYear select").val(); 
})}) 
</script> 
+0

太好了!感谢您纠正我和T. Stone。 – 2012-01-03 21:43:38

+0

谢谢,但信贷应该去T.斯通。 – 2012-01-03 21:52:37

1

我假设你想让这一切发生在btnBlue的点击事件上。

开始与一个单击处理...

$('a.btnBlue').click(function() { 
    // ... 
}); 

然后拿到月/年的值...

var month = $('.inpMonth select').val(); 
var year = $('.inpYear select').val(); 

然后导航到该网址...

window.location.href = 'https://mysite.com/events.aspx?my=' + month + year; 

所有这一切...

$('a.btnBlue').click(function() { 
    var month = $('.inpMonth select').val(); 
    var year = $('.inpYear select').val(); 
    window.location.href = 'https://mysite.com/events.aspx?my=' + month + year; 
}); 
0

第一,得到引用您的选择并链接DOM对象:

var button = $('a.btnBlue'); 
var month = $('#datepicker .inpMonth select'); 
var year = $('#datepicker .inpYear select'); 

下一个,创建一个函数来&年返回当前月份的字符串:

function currentSelection() { 
    return month.val() + year.val(); 
} 

创建一个功能,根据currentSelection()导航到新的url:

function navigateToDate() { 
    window.location.href = "https://mysite.com/events.aspx?my=" + currentSelection(); 
} 

wh恩单击按钮时,调用navigateToDate():

button.click(navigateToDate); 
0

要获得一个月尝试

$(".inpMonth select").val(); 

为了解析一个整体的形式给.serialize()和.serializeArray()试试

$("form").serialize()