sequence items and multiple selection boxes
I've got a DTML form page where people can update the locations that are covered by an environmental project. I have a multiple selection HTML form element that I am populating with the results of an SQL query that retuerns the complete list of locations. I have another query that returns a list of locations that are already associated with a specific project. What I'd like to do is iterate through all the places and add the SELECTED property to those that are already entered for a specific project. What I have in mind is something like. <dtml-in "queries.getPlacesAll()"> <dtml-in "queries.getPlacesForHypothesis()" prefix=obj> <option value="<dtml-var PLID>" <dtml-if "PlaceID in (??????)"> selected </dtml-if>><dtml-var PlaceName></option> </dtml-in> </dtml-in> Suggestions? thanks, David
David Siedband wrote at 2003-6-24 10:02 -0700:
I've got a DTML form page where people can update the locations that are covered by an environmental project. I have a multiple selection HTML form element that I am populating with the results of an SQL query that retuerns the complete list of locations. I have another query that returns a list of locations that are already associated with a specific project. What I'd like to do is iterate through all the places and add the SELECTED property to those that are already entered for a specific project. What I have in mind is something like.
<dtml-in "queries.getPlacesAll()"> <dtml-in "queries.getPlacesForHypothesis()" prefix=obj> <option value="<dtml-var PLID>" <dtml-if "PlaceID in (??????)"> selected </dtml-if>><dtml-var PlaceName></option> </dtml-in> </dtml-in>
Suggestions?
Most of your "??????" is application specific and you did not yet tell us these details... I assume, a ZSQL method "getPlacesForProject" returns the set of associated PlaceIds and that "PlaceId" is used as column name to convey this information. Then your "?????" can somehow look like: [x.PlaceId for x in getPlaceForProject(project=project)] Dieter
I realize I didn't articulate this very well in my post... Here is the solution I settled on. <dtml-let selectedIDs="[ai[0] for ai in queries.getHypPlaceIDs().tuples()]"> <select multiple name="places"> <dtml-in "queries.getPlaces()"> <option value="<dtml-var PLID>"<dtml-if "PLID in selectedIDs"> selected </dtml-if>><dtml-var CommonPlaceName></option> </dtml-in> </select> </dtml-let> I'm still interested in hearing other ways to do this. Thanks -- David Siedband web developer Wolf and Assocaites www.wolfandassociates.com 530.758.4211 530.758.2338 fax On Thursday, June 26, 2003, at 03:33 PM, Dieter Maurer wrote:
David Siedband wrote at 2003-6-24 10:02 -0700:
I've got a DTML form page where people can update the locations that are covered by an environmental project. I have a multiple selection HTML form element that I am populating with the results of an SQL query that retuerns the complete list of locations. I have another query that returns a list of locations that are already associated with a specific project. What I'd like to do is iterate through all the places and add the SELECTED property to those that are already entered for a specific project. What I have in mind is something like.
<dtml-in "queries.getPlacesAll()"> <dtml-in "queries.getPlacesForHypothesis()" prefix=obj> <option value="<dtml-var PLID>" <dtml-if "PlaceID in (??????)"> selected </dtml-if>><dtml-var PlaceName></option> </dtml-in> </dtml-in>
Suggestions?
Most of your "??????" is application specific and you did not yet tell us these details...
I assume, a ZSQL method "getPlacesForProject" returns the set of associated PlaceIds and that "PlaceId" is used as column name to convey this information. Then your "?????" can somehow look like:
[x.PlaceId for x in getPlaceForProject(project=project)]
Dieter
participants (2)
-
David Siedband -
Dieter Maurer