Jsfiddel链接:https://jsfiddle.net/d6uarv9h/9/
我有两个输入框长度和宽度,这些用于根据它们的比例计算面积。工作正常。
我希望该区域(=长度*宽度)不超过1000。
我无法在下面找到我的代码:
我可以在区域超过1000时显示警告但是不允许用户输入使区域超过1000的数量
var sizeheight = "1";
var sizewidth ="1.61";
jQuery("#sizewidth").on("input propertychange paste", function() {
jQuery('#sizeheight').val(((jQuery('#sizewidth').val()*sizeheight)/sizewidth).toFixed(2));
jQuery('#finalsize').html(jQuery("#sizewidth").val()+" * "+jQuery("#sizeheight").val()+ " inches");
});
jQuery("#sizeheight").on("input propertychange paste", function() {
jQuery('#sizewidth').val(((sizewidth/sizeheight)*jQuery('#sizeheight').val()).toFixed(2));
jQuery('#finalsize').html(jQuery("#sizewidth").val()+" * "+jQuery("#sizeheight").val()+ " inches");
});
$('#sizewidth,#sizeheight').on('keyup', function(e) {
var myfinalarea = parseFloat(jQuery('#sizewidth').val())*parseFloat(jQuery('#sizeheight').val());
if (myfinalarea > 1000){
jQuery('#warning').show();
/* to add code here */
}else{ jQuery('#warning').hide(); }
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="sizewidth" value="1.61">
<input type="text" id="sizeheight" value="1">
<span id="finalsize">1.61*1</span>
<span id="warning" style="display:none">area should be less that 1000</span>
&#13;
答案 0 :(得分:0)
您可以查看this article。
因此,在输入事件监听器中,在完成计算后,您意识到总大小超过了限制时,可以使用event.preventDefault
来防止更改发生。