我使用jQuery将分钟转换为小时,每当分钟超过59分钟;小时更改为1。
到目前为止我已尝试过这个 -
<script type="text/javascript">
$(document).ready(function () {
$('.minutes').change(function () {
if ($('.minutes').val() > 59) {
Math.floor($('.hour').val()) = ($(this).val()) + 1;
}
});
});
</script>
Jsfiddle link- Minutes into hour
我想要每分钟超过60的乘法时间显示转换小时。
感谢您的时间。
答案 0 :(得分:5)
这是JSFiddle
$(document).ready(function () {
$('.minutes').change(function () {
if ($('.minutes').val() > 59) {
//Math.floor($('.hour').val() )= $(this).val() + 1;
var min = $('.minutes').val();
var hr = Math.floor(min / 60);
var hrTemp = Math.floor($('.hour').val());
var remMin = min % 60;
$('.hour').val(hr + hrTemp);
$('.minutes').val(remMin);
}
});
});
答案 1 :(得分:3)
如果分钟超过120,则添加1
不会产生正确的小时,而不是通过添加1来对值进行硬编码,您可以将分钟数除以60并将结果添加到.hour
元素的值。
$(document).ready(function () {
$('.minutes').change(function () {
var min = + this.value;
if (min > 59) {
this.value = min % 60;
$('.hour').val(function (_, oldValue) {
return +oldValue + Math.floor(min / 60);
})
}
});
});
答案 2 :(得分:2)
这实际上只是一些基本的数学。
// get value
var minutes = parseInt($('.minutes').val());
// calculate
var hours = Math.floor(minutes / 60);
minutes = minutes % 60;
// set new values
$('.hour').val(hours);
$('.minutes').val(minutes);
如果你不知道%
做了什么:它是modulo - 运算符:
在计算中,模(有时称为模数)运算找到一个数除以另一个数的余数。
答案 3 :(得分:1)
$(document).ready(function() {
var hours = Math.floor( $('.minutes').val() / 60);
var minutes = $('.minutes').val() % 60;
$('.hour').val(hours);
$('.minutes').val(minutes);
});
答案 4 :(得分:0)
$(document).ready(function () {
$('.minutes').change(function () {
if (parseInt($('.minutes').val()) > 59) {
$('.hour').val($('.hour').val() + 1);
$('.minutes').val(0);
}
});
});
答案 5 :(得分:0)
检查jsFiddle http://jsfiddle.net/5wcaQ/9/
上的示例代码$('.minutes').change(function () {
var minutes = parseInt($('.minutes').val());
var hour = parseInt($('.hour').val() == '' ? '0' : $('.hour').val());
var excessHour = parseInt(minutes / 60);
minutes = minutes - (excessHour * 60);
$('.minutes').val(minutes);
excessHour += hour;
$('.hour').val(excessHour);
});
答案 6 :(得分:0)
这会将您的分钟文本框值转换为小时。 [记住这段代码不会改变分钟文本框的值; ]
http://jsfiddle.net/5wcaQ/12/
$(document).ready(function () {
var jqMin = $('.minutes'),
jqHour = $('.hour');
jqMin.change(function () {
if ( jqMin.val() > 59) {
console.log ( jqMin.val() + ' - ' + ( jqMin.val() / 60 ) );
jqHour.val ( Math.floor ( jqMin.val() / 60 ) );
}
});
});