我有一个JSP,它从DB获取一个名为sum的值...
String sum= request.getAttribute("s").toString();
int s = Integer.parseInt(sum);
我有一个名为weight的形式的字段,其值不能超过总和。
所以在点击提交时我正在运行一个名为validate的函数。这将检查字段是否大于或等于总和,但它一直给我警告。
<script type="text/javascript">
function validate()
{
var x= document.getElementById("s");
if(document.getElementById("weight").value>x)
{
alert("Weight exceeds maximum limit...!!!");
return false;
}
return true;
}
</script>
非常感谢帮助......
答案 0 :(得分:1)
这与JSP无关。在比较之前,您需要使用parseInt()
或parseFloat()
将值解析为数字。这是因为.value
属性始终是一个字符串。您还将元素的值与元素进行比较,这是没有意义的。
试试这个:
function validate()
{
var weight = parseFloat(document.getElementById("weight").value),
maxWeight = parseInt(document.getElementById("s").value, 10);
if(weight > maxWeight)
{
alert("Weight exceeds maximum limit...!!!");
return false;
}
return true;
}
答案 1 :(得分:1)
s
是一个Java变量,因此您无法通过document
引用它。
尝试类似:
var x = <%=Integer.parseInt(sum); %>
if (document.getElem...