在jQuery UI Datepicker中交换月/年选择列表位置

时间:2016-08-24 14:09:21

标签: javascript jquery jquery-ui jquery-ui-datepicker

我想在启用了changeYear和changeMonth选项的日期选择器中交换月/年选择元素的位置。

默认情况下,出现的顺序是月份和年份,我想要年份和月份。

运行下面的代码段,了解原因:

$( "#picker" ).datepicker({
            maxDate: 'today',
            changeYear: true,
            changeMonth: true,
            minDate: "01/01/1939",
            stepMonths:12,
            yearRange: "1939:" + new Date().getFullYear()
        });
<link rel="stylesheet" type="text/css" href="https://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" />
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>


<form>


 
<div><b>How do I swap the month/year select list placement?</b></div>
  
Birthdate: <input type="text" name="picker" id="picker" value="" />
  
 <ol>
  <li>Click the input above to open the datepicker.</li>
  <li>Click on the month select list to view the select options available.</li>
<li>Notice that it only shows up to the current month?  This is confusing to users.</li>
<li>Change the year to any previous one.<li>
 <li>Now select a month,  they are all there.</li>
<li>In our world of left to right processing, in this case, it makes sense to have the year appear first followed by the month.</li>
</ol>  
  
 </form>

1 个答案:

答案 0 :(得分:2)

只需使用CSS将月份和年份浮动到右侧:

.ui-datepicker select.ui-datepicker-month, 
.ui-datepicker select.ui-datepicker-year { float: right; }

或者,重复的答案提供:使用option showMonthAfterYear: true