Question

I simply need to be able to have a text field and validate if input is a decimal number like 100.00, 0.1, 10.6, etc.

I'm using Drupal 7.

Updated question to indicate 'programatic' solution (using Form API).

Was it helpful?

Solution

You could use #element_validate option for your field and write your own validation function. Maybe you could use is_float() or is_number() in your validation function. So your code

$form['yourField'] = array(
....
'#element_validate'=>'myValidation'
);
....
function myValidation($element, &$form_state, $form){
  if (!is_float( $element['#value']) )){
    form_error($element, t('This field is not decimal.'));
  }
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top