On Wed, Apr 14, 2010 at 2:52 PM, Adam <a...@spatialsystems.org> wrote:
> I want to have a dropdown menu that shows years 2000 thru 2015.  I'm using
> HTML::Template and I know I can pass an array ref to HTML::Template and loop
> over it to make the menu, but how would I put in a "selected" year?  What's
> the best method?

I struggled with this when I first began using H::T. You need to add a
"selected" hash item to the array ref. As you build the array ref, you
have to ask "if current-year equal form-year, set selected = 1."

Then, in your template you have to put inside the tmpl-loop, a

    <option <tmpl-if name=selected>
selected="selected"</tmpl-if>><tmpl-var name=value></option>

(I may have made a few typos in that example.).

I thought this was unintuitive compared to how intuitive C::A and H::T
are. It seemed like there should be a better way. But, after I got
used to it, I obsessed about bigger and better things.

I've never used fillnform. That might be a good suggestion. But, I
wanted to make sure you know how to do it naively.

Mark

#####  CGI::Application community mailing list  ################
##                                                            ##
##  To unsubscribe, or change your message delivery options,  ##
##  visit:  http://www.erlbaum.net/mailman/listinfo/cgiapp    ##
##                                                            ##
##  Web archive:   http://www.erlbaum.net/pipermail/cgiapp/   ##
##  Wiki:          http://cgiapp.erlbaum.net/                 ##
##                                                            ##
################################################################

Reply via email to