J'ai deux boîtes cfselect qui utilisent des liaisons et un cfc. L'un est l'État. Choisissez un état, et le second cfselect (comtés) est peuplé à la volée. Avant de faire cela avec l'attribut bind, j'ai utilisé l'attribut queryPostion = "below" comme ci-dessous pour mettre une ligne vide dans la case d'option. Je veux faire la même chose pour les boîtes de sélection d'état et de comté maintenant, comme j'aimerais avoir des valeurs "" (ou une valeur "ALL" en tant qu'option dans chacune.) Mais queryPostion ne fonctionne plus. pas sûr d'un travail autourColdFusion & Ajax: Comment obtenir une ligne vide dans une zone de sélection liée?
//original... leaves a blank option:
<cfselect enabled="No" name="search_state" multiple="no" query="get_States" value="StateUSAbb" display="StateName" queryPosition="below">
<option></option>
</cfselect>
//now, w/bind, doesn't work:
<cfselect bind="cfc:states.getStates()" bindonload="true" name="search_state"
value="StateUSAbb" display="StateName">
</cfselect>
<cfselect bind="cfc:states.getCounties({search_state})" bindonload="true" name="search_county" value="FIPS_County" display="CountyName" >
</cfselect>
MISE à JOUR Solution pour les deux requêtes.
SELECT DISTINCT tblLoc.StateUSAbb, lkuState.StateName
FROM lkuState INNER JOIN tblLoc ON lkuState.FIPS_State = tblLoc.FIPS_State
WHERE (lkuState.StateName <> 'New Brunswick')
UNION
SELECT '' AS StateUSAbb, '' AS StateName
FROM lkuState
ORDER BY StateName
SELECT '' AS FIPS_COUNTY, '' as CountyName
FROM lkuCnty
UNION
SELECT FIPS_County, CountyName
FROM lkuCnty
WHERE StateAbb = '#ARGUMENTS.stateabb#'
ORDER BY CountyName
@stuttsdc - Avez-vous d'abord exécuté les 2 versions de la requête "data" par elles-mêmes? ie Vérifier que le sql fonctionne en premier – Leigh
@Leigh ... Essayer. Je suis à peu près sûr que c'est un problème de sytaxe avec mon SQL. Lorsque j'essaie d'exécuter sql pour la zone 'states', j'obtiens une erreur: "L'instruction SELECT inclut un mot réservé ou un nom d'argument mal orthographié ou manquant, ou la ponctuation est incorrecte." – stuttsdc
@stuttsdc - Essayez une seule fois à la fois pour pouvoir identifier l'objet du problème. Exécutez le JOIN de base dans MySQL. Si cela fonctionne, rajoutez d'autres pièces (clause ORDER BY, puis UNION). – Leigh