【发布时间】:2017-10-09 15:24:28
【问题描述】:
使用 Javascript 输入只能填充 10 位数字在 firefox 上不起作用,为什么?
填充 EG:0258748542 我在 chrome 上进行了测试,效果很好。
但是不能在firefox上工作,为什么?
我该怎么做?
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<input name="ten_number" onkeyup="check_ten_number_length_up(this.value)" onkeydown="return check_ten_number_length_down(this,10);" type="number" class="feedback-input" id="ten_number" placeholder="please enter 10 digits" onchange="updateInput_ten_number(this.value)">
<span id="mySpan_ten_number"></span>
<script>
function check_ten_number_length_up(ten_number_value){
var ten_number_value = ten_number_value.replace(/[^0-9]+/g, "");
document.getElementById("ten_number").value = "";
document.getElementById("ten_number").value = ten_number_value;
var ten_number_value = document.getElementById("ten_number").value;
if(ten_number_value.length==10)
{
document.getElementById("ten_number").style.border = "1px solid rgba(72,72,72,0.4)";
document.getElementById("mySpan_ten_number").innerHTML = "";
}
else
{
document.getElementById("ten_number").style.border = "1px solid red";
document.getElementById("mySpan_ten_number").innerHTML = "please enter 10 digits";
}
}
</script>
<script>
function updateInput_ten_number(ten_number_value){
var ten_number_value_length = ten_number_value.length;
if(ten_number_value_length != "10")
{
document.getElementById("ten_number").style.border = "1px solid red";
document.getElementById("mySpan_ten_number").innerHTML = "please enter 10 digits";
}
else
{
document.getElementById("ten_number").style.border = "1px solid rgba(72,72,72,0.4)";
document.getElementById("mySpan_ten_number").innerHTML = "";
}
}
</script>
<script>
function check_ten_number_length_down(ten_number_value,max_length){
if([8, 37,38,39,40, 46].indexOf(event.which) == -1)
{
return ten_number_value.value.length < max_length;
}
}
</script>
【问题讨论】:
标签: javascript jquery html firefox