1. Registered User
Join Date
Mar 2009
Posts
5

If Statment Help

I have a JavaScript function (listed below), it works fine but I cant get it do one more thing. The problem is if any of the fields are empty or below zero the sum will be -1.11 or some other wrong number. I want it to only calculate if all fields (M3, M4, and M6) have a number above zero. Can someone please help? Thanks.

This is the code:

this.rawValue = (Number(M3.rawValue) - Number(M4.rawValue) - Number(M6.rawValue)) - 1.11

2. Registered User+
Join Date
Aug 2007
Posts
3,767
Well the best thing I can think of is three local variables, and test them individually.
Code:
```var M3 = Number(M3.rawValue), M4 = Number(M4.rawValue), M6 = Number(M6.rawValue);
if (M3 <= 0 || M4 <= 0 || M6 <= 0) {
// Deal with the error
}
else {
this.rawValue = M3 - M4 - M6 -1.11;
}```

3. Registered User
Join Date
Mar 2009
Posts
5
I tried the code below but it done not work. Dose it look like i put it in there right?

<calculate override="error">
<script contentType="application/x-javascript">var M3 = Number(M3.rawValue), M4 = Number(M4.rawValue), M6 = Number(M6.rawValue);
if (M3 &lt;= 0 || M4 &lt;= 0 || M6 &lt;= 0) {
}
else {
this.rawValue = M3 - M4 - M6 -1.11;
}</script>
</calculate>

4. Registered User+
Join Date
Aug 2007
Posts
3,767
It must <=, not &lt;=. They display the same, but are totally different.

And if you aren't going to treat the error
Code:
```if (M3 > 0 && M4 > 0 && M6 > 0) {this.rawValue = M3 - M4 - M6 -1.11;
}```
is more logical.