I have something like this:

        form = FORM('Emails:', BR(),
                    INPUT(_name='email',
requires=IS_NULL_OR(IS_EMAIL())), BR(),
                    INPUT(_name='email',
requires=IS_NULL_OR(IS_EMAIL())), BR(),
                    INPUT(_name='email',
requires=IS_NULL_OR(IS_EMAIL())), BR(),
                    INPUT(_name='email',
requires=IS_NULL_OR(IS_EMAIL())), BR(),
                    INPUT(_name='email',
requires=IS_NULL_OR(IS_EMAIL())), BR(),
                    'Message:', BR(),
                    TEXTAREA(_name='message'), BR(),
                    INPUT(_type='submit', _value='Invite'))

However, it seems to crash if I have multiple elements named 'email'.
It works fine if I name them email1, email2, etc. This is the error:

Error traceback

Traceback (most recent call last):
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\restricted.py", line 173, in restricted
    exec ccode in environment
  File "C:/Documents and Settings/minh/My Documents/InvestP2P/
applications/investp2p/controllers/loans.py", line 209, in <module>
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\globals.py", line 96, in <lambda>
    self._caller = lambda f: f()
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\tools.py", line 1848, in f
    return action(*a, **b)
  File "C:/Documents and Settings/minh/My Documents/InvestP2P/
applications/investp2p/controllers/loans.py", line 200, in
invite_lenders
    if form.accepts(request.vars, session):
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\html.py", line 1267, in accepts
    status = self._traverse(status)
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\html.py", line 449, in _traverse
    newstatus = c._traverse(status) and newstatus
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\html.py", line 456, in _traverse
    newstatus = self._validate()
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\html.py", line 1074, in _validate
    (value, errors) = validator(value)
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\validators.py", line 2055, in __call__
    return self.other(value)
  File "C:\Documents and Settings\minh\My Documents\InvestP2P\gluon
\validators.py", line 774, in __call__
    match = self.regex.match(value)
TypeError: expected string or buffer



On Feb 26, 1:02 pm, Thadeus Burgess <thade...@thadeusb.com> wrote:
> if they all have the same name you will receive it as a list in
> request.vars as the name
>
> You will need to use jQuery to dynamically add more fields.
>
> Also, you could use a textarea instead and have them press enter, and
> then split the string on '\n'
>
> So considering the following html
>
> <input type="text" name="hi" id="hi1" value="hello"  />
> <input type="text" name="hi" id="hi2" value="world" />
>
> This will be serialized into
>
> www.example.com?hi=hello&hi=world
>
> Which will be parsed by web2py into request.vars like so.
>
> request.vars.hi = ['hello', 'world']
>
> -Thadeus
>
> On Fri, Feb 26, 2010 at 2:50 PM, minh <mdn0...@gmail.com> wrote:
> > Hi,
>
> > I want to make a page where users can enter e-mails to send an invite.
> > There will be an array of input boxes (1 e-mail each box) and a send
> > button.
>
> > I was wondering what the best way to generate the form dynamically
> > was... in case the user wanted to add more e-mails.
>
> > Also, is there a way to iterate through the form elements so I don't
> > have to worry about number/name of input fields?
>
> > Thanks,
> > Minh
>
> > --
> > You received this message because you are subscribed to the Google Groups 
> > "web2py-users" group.
> > To post to this group, send email to web...@googlegroups.com.
> > To unsubscribe from this group, send email to 
> > web2py+unsubscr...@googlegroups.com.
> > For more options, visit this group 
> > athttp://groups.google.com/group/web2py?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To post to this group, send email to web...@googlegroups.com.
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en.

Reply via email to