diff --git a/mo/web/fields.py b/mo/web/fields.py
index 098d26285105ab08a383fc68a8af1534256a0a24..b91773587b1e85d608e4a64b2987bb5ca1504e66 100644
--- a/mo/web/fields.py
+++ b/mo/web/fields.py
@@ -40,6 +40,20 @@ class Decimal(wtforms.DecimalField):
         return super(Decimal, self)._value()
 
 
+class IntList(wtforms.StringField):
+    list = None
+
+    def __init__(self, label="", validators=None, **kwargs):
+        super().__init__(label, validators, **kwargs)
+
+    def pre_validate(field, form):
+        field.list = None
+        if field.data:
+            try:
+                field.list = mo.util.parse_int_list(field.data)
+            except mo.CheckError as e:
+                raise wtforms.ValidationError(str(e))
+
 class Points(Decimal):
     def __init__(self, label="Body", validators=None, **kwargs):
         super().__init__(label, validators, **kwargs)