我如何能够将值列表存储到下拉菜单中,然后获取用户选择的值?
name = month = year = ''
# populate names, months, years
names.add( '====================' )
months = ( '==========', 'Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάϊος', 'Ιούνιος', 'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος' )
years = ( '=====', 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 )
pdata = pdata + '''
<br><h3><br><font color=orangeredsize=6> Επιλεκτική Αναζήτηση: </font><br>
<form method="POST" action="%s">
'''
pdata = pdata + '<select name="name"><option>%s</option></select>' % '</option><option>'.join( names )
pdata = pdata + '<select name="month"><option>%s</option></select>' % '</option><option>'.join( months )
pdata = pdata + '<select name="year"><option>%s</option></select>' % '</option><option>'.join( list( map( str, years ) ) )
pdata = pdata + '''
<br><input type="image" src="/static/img/submit.gif" name="seek" value="<Αναζήτηση>">
</form> <br><br>
''' % url_for( 'seek' )
答案 0 :(得分:2)
几个月以来,请使用join
方法:
'<select name="month"><option>%s</option></select>' % \
'</option><option>'.join(months)
多年来,还使用map
函数将数字转换为字符串:
'<select name="year"><option>%s</option></select>' % \
'</option><option>'.join(list(map(str, years)))
要获取用户的选定值,请使用cgi
模块:
import cgi
form = cgi.FieldStorage()
year = form.getfirst('year')
month = form.getfirst('month')
答案 1 :(得分:2)
pdata = pdata + '''
<br><h3><br><font color=orangeredsize=6> Επιλεκτική Αναζήτηση: </font><br>
<form method="POST" action="%s">
<select name="name"><option>%s</option></select>
<select name="month">%s</select>
<select name="year"><option>%s</option></select>
<br>
<input type="image" src="/static/img/submit.gif" name="seek" value="<Αναζήτηση>">
</form> <br><br>
''' % (url_for( 'seek' ), \
'</option><option>'.join( names ),
''.join( map( lambda args: '<option value="%s">%s</option>' % (args[0], args[1]), enumerate(months) ) ),
'</option><option>'.join( list( map( str, years ) ) ) )
print(pdata)