2016-11-17 61 views
0

我使用Bootstrap Datetimepicker作爲體育比賽中的事件時間。如何在Bootstrap中獲得分值59以上datetimepicker

時間以秒爲單位以分鐘計,事件可能發生在23:11和62:17等時間。然而,插件只允許分鐘值達59分鐘。

我可以以某種方式讓插件允許其他微小的值嗎?

目前我有一個輸入

<input type="text" class="form-control event-time" value="00:00"> 

我綁定插件是這樣的:

$('.event-time').datetimepicker({format: 'mm:ss'}); 

使用插件的主要原因是,它進行消毒輸入用戶。例如,如果用戶輸入4.15,則模糊時會自動更改爲04:15。並且無效值被更改爲空白字段,從而向用戶顯示輸入無法理解。

+1

的的DateTimePicker用於白天選擇時間,該時間不長。 – Barmar

+0

@Barmar我應該用什麼來代替? –

+0

只需使用文本或數字輸入。 – Barmar

回答

0

如果任何人有類似的消毒時間輸入問題,我最終編寫的JavaScript(jQuery)自動將輸入格式化爲minutes:seconds格式。

這裏是功能和一個最小的例子。

嘗試輸入類似的東西1:2389m29s5468,它會得到翻譯在格式89:29一些有效的價值,往往類似希望的一。

function fixTime(field) 
 
{ 
 
    var input = field.val() 
 
    var delimiterPos = input.search(/\D/); //find the first non-numeric symbol 
 

 
    //everything numerical before that symbol is minutes 
 
    var minutes = parseInt(input.substring(0, delimiterPos)) || 0; 
 

 
    //everything numerical after that symbol is seconds 
 
    var seconds = parseInt(input.substring(delimiterPos + 1)) || 0; 
 

 
    //limit minutes to 100 and seconds to 60. Might be different in other cases 
 
    minutes = minutes % 100; 
 
    seconds = seconds % 60; 
 

 
    //casting to string 
 
    minutes = '' + minutes; 
 
    seconds = '' + seconds; 
 

 
    //prepending zeros to make values contain two symbols 
 
    minutes = ('00'+minutes).substring(minutes.length); 
 
    seconds = ('00'+seconds).substring(seconds.length); 
 

 
    field.val(minutes + ':' + seconds); 
 
} 
 

 
//usage example 
 
var timeToFix = $('.time-to-fix') 
 
timeToFix.change(function() { 
 
    fixTime(timeToFix); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<input type="text" class="time-to-fix">

相關問題