Remove the string speechmarks from around your variable declaration like so:
if({!Form__c.Volume__c} < 3000000)
{
c.SmallVol__c = true;
}
As noted in the comments below, to confirm that the value in {!Form__c.Volume__c}
is in fact a number as expected, it can be helpful to examine the JavaScript output on the page.
Salesforce takes the expression inside the curly braces, evaluates it (compiles it, really) and places the result of that expression in place of the curly brace expression. In this instance, I'd expect {!Form__c.Volume__c}
to equal some numeric value, like 2000000.
Because we are dealing with formatted output, sometimes this numeric value gets formatted into a string, for example as shown in the comments, 2000000 becomes '2,000,000' which of course will not work in the above if
statement.
To get to this JavaScript, you use a JavaScript developer console, available in most browsers.
To access the developer console (I find Chrome's one is the easiest to use), right click on an html element and click "Inspect Element". It's not important exactly which element you click on, as you are really interested in your JavaScript.
Look around and you'll find your code inside a <script>
element. From here, you should be able to confirm exactly what your curly braces expression has evaluated to.