html - 如何通过不指定列名来为任何查询动态创建下拉菜单
问题描述
我正在创建一个 HTML 表单,它需要来自 SQL 数据库的查询值的下拉菜单。我不想对表单输入进行硬编码,但尽可能动态地创建它们,但我注意到当创建查询的下拉菜单时,选项需要指定的列名。这迫使我对每个下拉菜单进行硬编码,因为我需要为每个下拉菜单指定列名。指定列名是有意义的,因为一个查询可以有多个选定的列名,但我用于下拉菜单的查询每个只选择一个列名。
我试图用来解决这个问题的只是 Coldfusion 和 HTML。
下面是硬编码的下拉菜单。
<select name = "REV_WC">
<option hidden disabled selected value> </option>
<cfoutput query = "#application.REV_WC#">
<option value = "#REV_WC#"> #REV_WC# </option>
</cfoutput>
</select>
我想尝试做这样的事情(不确定正确的语法是什么):
<select name = "Dd_NAME">
<option hidden disabled selected value> </option>
<cfoutput query = "#db_query#">
<option value = "#db_query.value#"> #db_query.value# </option>
</cfoutput>
</select>
查询如下所示:
<cfscript>
application.REV_WC = application.myDB.execute(sql = "SELECT DISTINCT REV_WC FROM MY_TABLE").getResult();
</cfscript>
解决方案
在大多数情况下最好是明确的,但实现您正在寻找的方法是使用ColumnList
查询结果中的作为数组表示法中的列名。
<option value = "#db_query[columnList][currentRow]#"> #db_query[columnList][currentRow]# </option>
如果总是有一列那么你很好,但如果你想从列表中选择,你可以按索引选择它们。例如对于SELECT ValueColumn, LabelColumn...
<option value = "#db_query[listGetAt(columnList, 1)][currentRow]#"> #db_query[listGetAt(columnList, 2)][currentRow]# </option>
推荐阅读
- javascript - 全局作用域如何在 javascript 中工作
- vba - 将标题复制到一些空白的行
- windows - Zookeeper 节点在系统重启后被删除
- python - 在python中评价多目标问题解决方案的拥挤距离
- r - CMD 运行 R 语句和 R 文件时出错
- javascript - 如何将json值过滤到数组
- chapel - 如何编译 PMI 支持以在 Omni-Path 网络上运行 Chapel/GASNet?
- python-3.x - 如何将 Dataframe 转换为给定格式的键值对
- ios - ObjectiveC 使用 XIB 单元格在 tableview 中使用并以编程方式将视图从左到右转换为阿拉伯语
- r - R中不同包的均值漂移聚类中的不同带宽规范