我想验证一个适用于所有平台的html输入,例如Chrome,Internet Explorer,Mozilla,Firefox,Safari& Opera for PC以及iOS和Android。
我想将输入限制在特定范围之间的数字,例如(1到59)。我还有另一个相同形式的输入元素。我还想检查输入1<输入2,否则给出错误信息。请帮忙。
我尝试了以下两个在所有平台上都不起作用的选项:
<td align="center"><input id="SH1" name="sh1" type="number" min="1" max="59" align="center" /></td>
<td align="center"><input id="SM1" name="sm1" type="text" maxlength="2" onkeypress='return event.charCode >= 48 && event.charCode <= 57' /></td>
答案 0 :(得分:0)
要与几乎所有浏览器兼容,请使用本机JavaScript。您的要求的一个简单示例如下。
<script language="javascript">
function validate() {
var val1 = parseInt(document.getElementById('val1').value);
var val2 = parseInt(document.getElementById('val2').value);
minMaxRange(val1, val2);
comparison(val1, val2);
}
function minMaxRange(value1, value2) {
if (value1 < 1 || value2 < 1) {
alert("Minimum value should be 1");
}
if (value1 > 59 || value2 > 59) {
alert("Maximum value should be 59");
}
}
function comparison(value1, value2) {
if (value1 > value2) {
alert("Value2 should be greater than Value1");
}
}
</script>
<body>
<p><span>Value 1 : </span>
<input type="text" id="val1">
</p>
<p><span>Value 2 : </span>
<input type="text" id="val2">
</p>
<p>
<input type="button" value="Validate" onClick="validate()">
</p>
</body>
答案 1 :(得分:0)
好的,我们假设有两个输入如下
<input id="input1" type="number">
<input type="input2" type="number">
现在JS :(使用jQuery)
if($("#input1").val()<1 || $("#input1").val()>59)
alert("Error");
if($("#input1").val() < $("#input2").val())
alert("Error");
请记住在此代码之前包含jQuery库。
现在,如果您想在输入期间检查它,请执行以下操作;
$("[id^=input]").keyUp(function(){
if($("#input1").val()<1 || $("#input1").val()>59)
alert("Error");
if($("#input1").val() < $("#input2").val())
alert("Error");
})