我想为电话号码创建一个输入字段。我正在使用 JavaScript 动态创建输入字段。
<input type="text" id="phone" name="phone">
如何限制用户只能输入 10 位数字才能获取电话号码。
我想为电话号码创建一个输入字段。我正在使用 JavaScript 动态创建输入字段。
<input type="text" id="phone" name="phone">
如何限制用户只能输入 10 位数字才能获取电话号码。
试试这个
<input type="text" name="country_code" title="Error Message" pattern="[1-9]{1}[0-9]{9}">
这将确保
采用maxlength
<input type="text" maxlength="10" />
您可以使用maxlength
来限制长度。通常对于您会使用的数字输入type="number"
,但这会添加一个旋转框来滚动数字,这对于电话号码完全没有用。但是,您可以使用该pattern
属性将输入限制为数字(如果需要,还需要 10 个数字):
<input type="text" maxlength="10" pattern="\d{10}" title="Please enter exactly 10 digits" />
好吧,我已经成功地创建了自己的工作答案。
<input type="text" id="phone" name="phone" onkeypress="phoneno()" maxlength="10">
也
<script>
function phoneno(){
$('#phone').keypress(function(e) {
var a = [];
var k = e.which;
for (i = 48; i < 58; i++)
a.push(i);
if (!(a.indexOf(k)>=0))
e.preventDefault();
});
}
</script>
为您的输入添加一个maxlength
属性。
<input type="text" id="phone" name="phone" maxlength="10">
请参阅JSFiddle 上的这个工作示例。
HTML
<input type="text" name="fieldName" id="fieldSelectorId">
此字段最多只能接受 10 位数字,并且不接受零作为第一位数字。
jQuery
jQuery(document).ready(function () {
jQuery("#fieldSelectorId").keypress(function (e) {
var length = jQuery(this).val().length;
if(length > 9) {
return false;
} else if(e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
return false;
} else if((length == 0) && (e.which == 48)) {
return false;
}
});
});
$(document).on('keypress','#typeyourid',function(e){
if($(e.target).prop('value').length>=10){
if(e.keyCode!=32)
{return false}
}})
优点是这适用于 type="number"
这就是我使用的:
<input type="tel" name="phoneNumber" id="phoneNumber" title="Please use a 10 digit telephone number with no dashes or dots" pattern="[0-9]{10}" required /> <i>10 digits</i>
它准确地阐明了条目中的预期内容并提供了可用的错误消息。
虽然您可以在输入上使用maxLength和一些javascript 验证,但仍然需要进行服务器端验证。
HTML
<input type="text" id="youridher" size="10">
使用jQuery,
SIZE = 10
$(document).ready(function() {
$("#youridher").bind('keyup', function() {
if($("#youridher").val().length <= SIZE && PHONE_REGEX) {
return true;
}
else {
return false;
}
});
});
maxlength 限制不能多于所需位数但接受少于所需位数的位数。如果 mobile No maxlength="10" 它不会接受 11 但可以接受任何最多 10
这里所有上述输出都给出了一个 10 位数字,但同时输入字段也接受字符,这不是完整的解决方案。为了只设置 10 位数字,我们可以使用输入标签以及该类型作为数字,因为我们可以通过在 css 中编写一些小代码来删除上下数组,如下所示以及输入标签.
<input name="phone" maxlength="10" pattern="[1-9]{1}[0-9]{9}" class="form-control" id="mobile" placeholder="Enter your phone Number" type="number">
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0;
}
只需在您的文档中包含 parsley.js 文件,然后在手机号码的输入元素中输入这个
data-parsley-type= "number" data-parsley-length="[10,10]" data-parsley-length-message= "Enter a Mobile Number"
您可以根据您的要求更改消息您还需要通过编写初始化文档中的 parsley.js 文件
<script type="text/javascript">
$(document).ready(function() {
$('form').parsley();
});
</script>
---您文档中的上述代码。***
下面的代码片段按预期完成了工作!
<input type="text" name="AUS" pattern="[0-9]{10}" title="You can enter only 10 digits..." />
//type="text" <!-- always -->
//name="AUS" <!-- for Australia -->
//pattern="[0-9]{10}" <!-- 10 digits from 0 to 9 -->
//title="You can enter only 10 digits..." <!-- Pops a warning when input mismatches -->
如何将文本框格式设置为 8 位数字(00000019)
string i = TextBox1.Text;
string Key = i.ToString().PadLeft(8, '0');
Response.Write(Key);
<input type="text" name='mobile_number' pattern=[0-9]{1}[0-9]{9}>
如果您希望用户在输入控件中输入 10 位数字进行限制,请查找以下代码
<input class="form-control input-md text-box single-line" id="ContactNumber" max="9999999999" min="1000000000" name="ContactNumber" required="required" type="number" value="9876658688">
好处 -
它不允许在输入框中输入任何字母,因为输入框的类型是“数字”
它将允许最多 10 位数字,因为 max 属性设置为 10 位数字中的最大可能值
它不允许用户输入任何少于 10 位数的内容,因为我们希望将用户限制在 10 位数的电话号码中。代码中的 min 属性具有 10 位的最小可能值,因此它会告诉用户输入不小于该值的有效 10 位值。
无论谁在 2020 年查看此帖子,他们都可以使用<input inputmode="tel">
电话号码(10 位)、<input inputmode="numeric" maxLength={5}>
数字类型并限制为仅 5 位。