我想更改前面单词的数字。
Ex:0 = 1月/ 1 = 2月/ 2 = 3月....
这是我的代码HTML
<div class="input-group btn-group select-date">
<button class="btn btn-default" type="button"><i class="fa fa-caret-left"></i></button>
<input type="text" class="form-control" value="05" min="01" max="12" readonly>
<button class="btn btn-default" type="button"><i class="fa fa-caret-right"></i></button>
</div>
这是我的代码JS
$(function(){
$('.select-date .btn:last-of-type').on('click', function() {
var btn = $(this);
var input = btn.closest('.select-date').find('input');
if (input.attr('max') == undefined || parseInt(input.val()) < parseInt(input.attr('max'))) {
input.val(parseInt(input.val(), 10) + 1);
} else {
btn.next("disabled", true);
}
});
$('.select-date .btn:first-of-type').on('click', function() {
var btn = $(this);
var input = btn.closest('.select-date').find('input');
if (input.attr('min') == undefined || parseInt(input.val()) > parseInt(input.attr('min'))) {
input.val(parseInt(input.val(), 10) - 1);
} else {
btn.prev("disabled", true);
}
});
})
请你帮我解决问题,我真的输了。
答案 0 :(得分:0)
创建课程:
var Months=function(){
this.months=[
"January"
... //all months
];
};
Months.prototype.getMonthName=function(num){
if (num<0 || num>11){
console.log("no such month!");
return null;
}
return this.months[num];
};
示例用法:
var months=new Months();
months.getMonthName(0); //January
答案 1 :(得分:0)
我试图尽可能地保留原始代码。我还假设您需要法语月份名称。
我们的想法是将月份号码存储为<input>
的属性,就像您为“min”所做的那样。和&#39; max&#39;并在每次更改时将输入值设置为月份名称。
由于每个浏览器都不支持toLocaleString
,因此您可能需要对此数组进行硬编码:var monthName = [ 'janvier', 'février', etc. ];
。
除此之外:new Date(0, n + 1)
正在生成1900年的日期。但是我们在这里做的事情还可以。
var monthName = [];
for(var n = 0; n < 12; n++) {
monthName[n] = (new Date(0, n + 1)).toLocaleString('fr-FR', { month: "long" });
}
$(function(){
$('.select-date .btn:last-of-type').on('click', function() {
var btn = $(this);
var input = btn.closest('.select-date').find('input');
if (input.attr('max') == undefined || parseInt(input.attr('month')) < parseInt(input.attr('max'))) {
input.attr('month', parseInt(input.attr('month'), 10) + 1);
input.val(monthName[parseInt(input.attr('month'), 10) - 1]);
} else {
btn.next("disabled", true);
}
});
$('.select-date .btn:first-of-type').on('click', function() {
var btn = $(this);
var input = btn.closest('.select-date').find('input');
if (input.attr('min') == undefined || parseInt(input.attr('month')) > parseInt(input.attr('min'))) {
input.attr('month', parseInt(input.attr('month'), 10) - 1);
input.val(monthName[parseInt(input.attr('month'), 10) - 1]);
} else {
btn.prev("disabled", true);
}
});
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="input-group btn-group select-date">
<button class="btn btn-default" type="button"><i class="fa fa-caret-left"></i>-</button>
<input type="text" class="form-control" value="mai" month="5" min="1" max="12" readonly>
<button class="btn btn-default" type="button"><i class="fa fa-caret-right"></i>+</button>
</div>
&#13;