Đây là hành vi lạ đối với tôi nhưng trên trình duyệt Webkit (Chrome/Safari, không phải Firefox) nếu tôi bao gồm dấu cách trong một số các số trong một <input type=number>
thì đầu vào đó value
.Loại đầu vào HTML5 = giá trị số trống trong Webkit nếu có dấu cách hoặc ký tự không phải là số không?
Xem JSFiddle này: http://jsfiddle.net/timrpeterson/CZZEX/5/
Dưới đây là các mã:
<input id='withOutspace' type='number' value='123'>
<input id='with_space' type='number' value='123 123'>
<button>click</button>
$('button').click(function(){
alert("withOut:"+$('#withOutspace').val()+" |||| with:"+$('#with_space').val());
});
Nếu bạn đi đến this JSFiddle, bạn sẽ nhận thấy rằng with_space
đầu vào là rỗng. Nhưng nếu bạn đặt nó vào trong đó một số có một dấu cách hoặc bất kỳ ký tự không phải là số, cảnh báo sẽ nói rằng đầu vào trống.
Rõ ràng, đây là một thảm họa để xác thực biểu mẫu với số thẻ tín dụng, v.v. vì vậy, có ai có hack vì điều này không?
Sự cố khi sử dụng _tel_ là nó hiển thị bàn phím số điện thoại không có số thập phân hoặc dấu âm thường được sử dụng trong các trường số (ví dụ: tiền tệ). (Thử nghiệm trên iPhone) – Jason
có sử dụng 'type =" tel "' thay vì 'type =" number "' phụ thuộc vào trường hợp sử dụng. Thẻ tín dụng (và số điện thoại rõ ràng) sẽ tốt hơn với 'type =" tel "' vì hai lý do tôi đề cập ở trên. –
Điều gì về khả năng truy cập?Điều này không chứng minh là phiền hà đối với người đọc màn hình? – Carlin