如果用户使用jquery传递单位数值,如何追加两位数

时间:2013-09-17 10:29:14

标签: javascript jquery

我正在研究jquery。

我想检查todate和日期的验证。

  

想要将我的字符串转换为两位数(如果用户输入单位数值,则需要添加0)

当用户在文本框中输入单个数字值时,如何给出两位数?

expected output is 
  var HourPerWeek = $("#Hour").val(); 
 -- if user enter value 2 i need to convert it into 02
  var MinPerWeek = $("#Min").val();    
-- if user enter value 1 i need to convert it into 01
  

而不是字符串的长度?

4 个答案:

答案 0 :(得分:2)

function returnDoubleDigits(str) {
  return str.length === 1 ? '0' + str : str;
}

e.g。

var HourPerWeek = returnDoubleDigits($("#Hour").val());

Fiddle

答案 1 :(得分:0)

这是否有效,只需检查字符串长度,然后在短于2

时添加零
var HourPerWeek;
if ($("#Hour").val().length < 2){
   HourPerWeek = "0"+ $("#Hour").val(); 
}
else{
   HourPerWeek = $("#Hour").val();
}

答案 2 :(得分:0)

您必须像this example中一样手动将0添加到字符串的开头:

String.prototype.paddingLeft = function (paddingValue) {
    return String(paddingValue + this).slice(-paddingValue.length);
};

var HourPerWeek = $("#Hour").val().paddingLeft('00');

说明:您可以在任何字符串上调用paddingLeft。它将添加字符,您将其作为参数传递到字符串的左侧,并返回一个字符串,其长度与给定参数的长度完全相同。更多例子:

   ''.paddingLeft('00') // returns '00'
  '1'.paddingLeft('00') // returns '01'
 '11'.paddingLeft('00') // returns '11'
'111'.paddingLeft('00') // returns '11'
  '1'.paddingLeft('  ') // returns ' 1'

答案 3 :(得分:-2)

将此作为检查传递参数长度的函数。

function returnTwoDigit(var Data){
if (Data.length != 2) {
    if (Data.length == 1) {
        Data= "0" + Data;
    }
    return Data
}