Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果小于输入字段的maxlength,则在输入数字的左侧添加零_Php_Jquery_Html - Fatal编程技术网

Php 如果小于输入字段的maxlength,则在输入数字的左侧添加零

Php 如果小于输入字段的maxlength,则在输入数字的左侧添加零,php,jquery,html,Php,Jquery,Html,我有三个电话号码输入,每个号码的长度分别为4,8,4。当到达输入字段的maxlength时,我通过jQuery处理鼠标焦点,然后焦点/跳转到下一个字段 我还想做一个旁焦点来计算每个字段中的数字,如果它们小于maxlength,那么在左侧附加零,使其等于回显输入字段时各个输入字段的maxlength。e、 g如果在第一次输入中有人只输入两个数字,如47,则输出应为0047,在echo之后的左侧附加两个零 这是我的HTML: <form> <input type="text" na

我有三个电话号码输入,每个号码的长度分别为4,8,4。当到达输入字段的maxlength时,我通过jQuery处理鼠标焦点,然后焦点/跳转到下一个字段

我还想做一个旁焦点来计算每个字段中的数字,如果它们小于maxlength,那么在左侧附加零,使其等于回显输入字段时各个输入字段的maxlength。e、 g如果在第一次输入中有人只输入两个数字,如
47
,则输出应为
0047
,在echo之后的左侧附加两个零

这是我的HTML:

<form>
<input type="text" name="area_code" id="area_code" maxlength="4" size="3" /> -
<input type="text" name="number1" id="number1" maxlength="8" size="8" /> -
<input type="text" name="number2" id="number2" maxlength="4" size="3" />
</form>

-
-
这是jquery

<script type="text/javascript" src="js/jquery.autotab-1.1b.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#area_code, #number1, #number2').autotab_magic().autotab_filter('numeric');
});
</script>

$(文档).ready(函数(){
$(“#区域#u代码,#编号1,#编号2')。自动选项卡_magic()。自动选项卡_过滤器('numeric');
});

在这个问题上有PHP和jQuery标记,下面是两个:

PHP:

jQuery: 据我所知,没有内置函数,所以您必须创建一个。这里有一个关于用javscript做这件事的问题。 被接受的答案应该起作用

var num1=$('#number1');
var num1 = $('#number1');
var diff1 = 0;

if (num1.value.length < num1.attr('maxlength')) 
 { diff1 = num1.attr('maxlength') - num1.value.length; }

for (var i = 0; i< diff1; i++ ) { num1.val = '0' + num1.val(); } 
var-diff1=0; if(num1.value.length
您可以随时编写一个函数来为您执行此操作:

$('#area_code, #number1, #number2').blur(function(){
    $(this).val(padMe($(this).val(),$(this).attr("maxlength")));
});

function padMe(str,length)
{
    var diff = length-str.length;
    return (diff>0) ? (new Array( diff+1 ).join("0") + str) : str;
}

任何一个但更多的prefferable is phpstr_pad()用于字符串我的意思是它将零附加到字符串中,但在我的情况下,输入采用数字,所以它不会将零附加到数字,所以任何数字函数??