我想知道當使用輸入類型=「數字」時Safari瀏覽器(MAC OS和版本7.0.4(9537.76.4))的表單驗證工作不正常: 使用Safari瀏覽器訪問
http://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_input_max_min
我希望在「數量」字段中輸入一個字母或超出指定範圍的數字時,我會收到警告。但沒有任何反應,輸入發送到服務器...
當使用鉻我得到一個警告...
我也檢查了http://html5test.com網站,它表明,輸入類型號和最小和最大屬性是支持的。但爲什麼它不起作用?我做錯了什麼,或者我不瞭解什麼?Safari瀏覽器html輸入類型最小最大驗證不起作用
任何幫助,不勝感激...
感謝 託比
編輯:弗蘭克Conijn提到它是真正的Safari工作沒有。我現在的JavaScript解決它(選擇所有號碼輸入字段是否含有一個數字,如果是在指定的範圍內):
$("input[type='number']").change(function(){
var maxValue = parseInt($(this).attr('max'));
var minValue = parseInt($(this).attr('min'));
var enteredValue = parseInt($(this).val());
if($.isNumeric(enteredValue)) {
var enteredValue = parseInt($(this).val());
if (enteredValue > maxValue) {
$(this).val(maxValue);
} else if (enteredValue < minValue) {
$(this).val(minValue);
}
} else {
$(this).val(minValue);
}
});
大謝謝!我現在添加了我的建議。 – Tobi
@Tobi:不客氣。而僅供參考:在瀏覽器中,新瀏覽器版本中也存在更多不一致的表單行爲。只是[看看這裏](http://stackoverflow.com/questions/24407109/new-webkits-convert-decimal-comma-to-dot-and-vice-versa-in-number-type-inputs),以請參閱新的歐洲 - 歐洲WebKit版本將數字格式中的小數點逗號更改爲點,並將數字輸出字段中的小數點更改爲逗號...因此,您做出了恢復爲Javascript驗證的正確決定。 –