ColdFusion에 익숙하지 않아 MS Access에서 쉽게 할 수있는 몇 가지 간단한 기능을 수행하는 방법을 파악하는 데 어려움을 겪고 있습니다.드롭 다운 상자를 기반으로 한 CFGRID
다음은 내가 수행하려고 시도한 것입니다. cfgrid
드롭 다운 상자를 기반으로 데이터를 필터링하고 싶습니다. 그런 다음 다른 드롭 다운 상자 (필요한 경우)를 기반으로 해당 데이터를 필터링하십시오.
도움을 주시면 감사하겠습니다.
예 :
<html>
<!---Grid Source--->
<cfquery name="getArtists" datasource="cfartgallery">
SELECT A.*
FROM ARTISTS A
WHERE
1=1
<cfif structKeyExists(form,'dropdownbox1')>
AND STATE like <cfqueryparam value="%#dropdownbox1#%" cfsqltype="CF_SQL_VARCHAR" maxlength="255">
<cfif structKeyExists(form,'dropdownbox2')>
AND LASTNAME like <cfqueryparam value="%#dropdownbox2#%" cfsqltype="CF_SQL_VARCHAR" maxlength="255">
</cfif> <!--- DropdownBox 2 --->
</cfif> <!--- DropdownBox 1 --->
ORDER BY A.LASTNAME, A.FIRSTNAME
</cfquery>
<head>
</head>
<body style="padding:20px;">
<cfform>
<cfformgroup type="horizontal" style="backgroundAlpha:0;font-size:12;color:##000;">
<cfformgroup type="vertical" width="100">
<!---Query for STATE--->
<cfquery name="getState" datasource="cfartgallery">
SELECT A.STATE
FROM ARTISTS A
</cfquery>
<!---STATE Dropdown--->
<cfselect name="dropdownbox1" query="getState" queryposition="below"
label="State:" value="STATE" display="STATE"
required="no"
style="backgroundAlpha:0;" width="125">
<option></option>
</cfselect>
</cfformgroup>
<cfformgroup type="vertical" width="100">
<!---Query for LastName--->
<cfquery name="getLast" datasource="cfartgallery">
SELECT A.LASTNAME
FROM ARTISTS A
</cfquery>
<!---LastName Dropdown--->
<cfselect name="dropdownbox2" query="getLast" queryposition="below"
label="Last Name:" value="LASTNAME" display="LASTNAME"
required="no"
style="backgroundAlpha:0;" width="125">
<option></option>
</cfselect>
</cfformgroup>
</cfformgroup>
<cfformitem type="spacer" height="20"/>
<!---Grid--->
<cfgrid name="myGrid" query="getArtists" format="html">
<cfgridcolumn name="ARTISTID" header="ARTISTID" width="75" headeralign="center" dataalign="center"/>
<cfgridcolumn name="FIRSTNAME" header="FIRSTNAME" width="100" headeralign="center" dataalign="center"/>
<cfgridcolumn name="LASTNAME" header="LASTNAME" width="75" headeralign="center" dataalign="center"/>
<cfgridcolumn name="ADDRESS" header="ADDRESS" width="100" headeralign="center" dataalign="center"/>
<cfgridcolumn name="CITY" header="CITY" width="125" headeralign="center" dataalign="center"/>
<cfgridcolumn name="STATE" header="STATE" width="125" headeralign="center" dataalign="center"/>
<cfgridcolumn name="POSTALCODE" header="POSTALCODE" headeralign="center" dataalign="center"/>
<cfgridcolumn name="EMAIL" header="EMAIL" width="125" headeralign="center" dataalign="center"/>
<cfgridcolumn name="PHONE" header="PHONE" headeralign="center" dataalign="center"/>
<cfgridcolumn name="FAX" header="FAX" headeralign="center" dataalign="center"/>
<cfgridcolumn name="THEPASSWORD" header="THEPASSWORD" headeralign="center" dataalign="center"/>
</cfgrid>
</cfform>
</body>
</html>
UPDATE
벤 Koshy 내가 형식으로 양식을 변경하는 경우 나 하나의 문제가 있지만 마치 마법처럼 일했다 코드 = "플래시"그것은 나를을 제공합니다 오류 "이름이 'submit'"인 메소드가 없습니다. 이 문제를 해결하려면 무엇이 필요합니까?
감사 자니이 필요한 대부분의 작업이 cfgrid를 작업 할
비슷한 주제에 대한 최근 질문이있었습니다. 이 스레드 읽기, http://stackoverflow.com/questions/14026510/how-would-you-go-about-executing-a-database-query-based-on-the-value-from-a-form. 개념이 cfgrid에 적용되는지 확실하지 않지만 한 번 볼만한 가치가 있습니다. –
필터를 선택한 경우 (상태/이름) 원래 페이지로 양식 제출이 누락되었습니다. – BKK
질문이 하나 더있어서 상자를 입력 할 때 필터와 함께 2 개의 드롭 다운을 사용할 수도 있습니까? @ 벤 Koshy –