Class: AlFloat

Inherits:
AlNumber show all
Defined in:
lib/al_form.rb

Overview

浮動小数点入力ウィジェット

Instance Attribute Summary

Attributes inherited from AlNumber

#max, #min

Attributes inherited from AlWidget

#filter, #foreign, #hidden, #label, #message, #name, #required, #tag_attr, #tag_type, #value

Instance Method Summary collapse

Methods inherited from AlNumber

#initialize

Methods inherited from AlWidget

#initialize, #make_tag, #make_value, #set_attr, #set_value

Constructor Details

This class inherits a constructor from AlNumber

Instance Method Details

#validateBoolean

(AlFloat) バリデート

Returns:

  • (Boolean)

    成否



1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
# File 'lib/al_form.rb', line 1438

def validate()
  @message = ""

  if @value == "" || @value == nil
    if @required
      @message = "#{@label}を入力してください。"
      return false
    end
    @value = nil
    return true
  end

  if /^[\s]*[+-]?[\d]+(\.[\d]+)?([eE][+-]?[\d]+)?$/ !~ @value.to_s
    @message = "#{@label}を正しく入力してください。"
    return false
  end

  v = @value.to_f
  if @max && v > @max
    @message = "#{@label}は、#{@max}以下を入力してください。"
    return false
  end
  if @min && v < @min
    @message = "#{@label}は、#{@min}以上を入力してください。"
    return false
  end
  @value = v

  return true
end