jquery - Coldfusion Dropdown Query -


this question has answer here:

so need query based on selected user. dropdown menu school, eid , principal , books listed options.when "school" selected or clicked query on sql-server database , throw in drop down list user select values of school. english not great mean

dropdown -> if school chosen - > kogod, sis, humane studies, whartons school of business etc. (from database) populate. -> if wharton's clicked show table.so cascading dropdown based of off chosen..

so how do it? code please give me code. thanks

<cfform method="post" action=""> <select name="one" required="yes" onchange="this.form.submit()"> <option>select type</option>   <option value="school">school</option>   <option value="eid">electronic id</option>   <option value="prinical">principal's name</option>   <option value="books">books used</option> </select> </cfform>  <cfquery name="schoollist" datasource="xxyyzz" dbtype="odbc">           select school_title,                        databasename order school_title         </cfquery>  <cfif one.school "selected?" first dropdown drown down pop list of schools > 

help... please

i wrote quick solution should able expand out several levels deep enough. handles first layer select value first drop down , shows next can apply same concept multiple times.

<cfif structkeyexists(form, "one") , form.one neq "">     <cfswitch expression="#form.one#">         <cfcase value="school">             <cfquery name="schoollist" datasource="xxyyzz" dbtype="odbc">               select school_title,                databasename order school_title             </cfquery>              <select name="schoollist" required="yes" onchange="this.form.submit()">                 <cfoutput query="schoollist">                     <option value="#schoollist.school_title#">#schoollist.school_title#</option>                 </cfoutput>             </select>         </cfcase>          <cfcase value="eid">             <cfquery name="eidlist" datasource="xxyyzz" dbtype="odbc">               select eid,                databasename order eid             </cfquery>              <select name="eidlist" required="yes" onchange="this.form.submit()">                 <cfoutput query="eidlist">                     <option value="#eidlist.eid#">#eidlist.eid#</option>                 </cfoutput>             </select>         </cfcase>          <cfcase value="principle">             <cfquery name="principle" datasource="xxyyzz" dbtype="odbc">               select principle,                databasename order principle             </cfquery>              <select name="principlelist" required="yes" onchange="this.form.submit()">                 <cfoutput query="principle">                     <option value="#principle.principle#">#principle.principle#</option>                 </cfoutput>             </select>         </cfcase>          <cfcase value="books">             <cfquery name="books" datasource="xxyyzz" dbtype="odbc">               select books,                databasename order books             </cfquery>              <select name="books" required="yes" onchange="this.form.submit()">                 <cfoutput query="books">                     <option value="#books.books#">#books.books#</option>                 </cfoutput>             </select>         </cfcase>     </cfswitch> <cfelse>     <cfform method="post" action="#cgi.script_name#">          <select name="one" required="yes" onchange="this.form.submit()">           <option>select type</option>           <option value="school">school</option>           <option value="eid">electronic id</option>           <option value="prinical">principal's name</option>           <option value="books">books used</option>         </select>     </cfform> </cfif> 

you might able simplify code doing don't have ability test @ moment might have play around work:

    <cfif structkeyexists(form, "dropdown") , form.dropdown neq "">     <!--- prevent sql injection, serves convert text in database valid table , column names next query--->     <cfset sanitizedstring = rereplacenocase(form.dropdown,'[^a-z_]','','all')>     <!--- data drop down based on user selection --->     <cfif structkeyexists(form, "roottype")>         <cfset tablename = rereplacenocase(form.roottype,'[^a-z_]','','all')>         <cfquery name="getinfo" datasource="mysql">             select *              #tablename#             #tablename# = <cfqueryparam cfsqltype="cf_sql_varchar" value="#form.dropdown#">         </cfquery>          <cfif getinfo.recordcount gt 0>             <cfdump var="#getinfo#">         <cfelse>             no records found.         </cfif>     <cfelse>         <cfquery name="getdropdowndata" datasource="mysql">           select #sanitizedstring#           #sanitizedstring# order <cfqueryparam cfsqltype="cf_sql_varchar" value="#form.dropdown#">         </cfquery>          <cfform method="post" action="#cgi.script_name#">             <input type="hidden" name="roottype" value="<cfoutput>#form.dropdown#</cfoutput>">             <select name="dropdown" required="yes" onchange="this.form.submit()">                         <option value="">select value</option>                 <cfoutput query="getdropdowndata">                     <cfset val = getdropdowndata["#sanitizedstring#"]>                     <option value='#val#'>#val#</option>                 </cfoutput>             </select>         </cfform>     </cfif>     <!--- redisplay form --->  <cfelse>     <cfform method="post" action="#cgi.script_name#">          <select name="dropdown" required="yes" onchange="this.form.submit()">           <option>select type</option>           <option value="school">school</option>           <option value="eid">electronic id</option>           <option value="principal">principal's name</option>           <option value="books">books used</option>         </select>     </cfform> </cfif> 

Comments

Popular posts from this blog

javascript - jquery or ashx not working -

opencv - DataType<cv::detail::deriv_type>::depth what is it used for -

python 3.x - Mapping specific letters onto a list of words -