我的标题可能不够清楚,所以让我先解释一下我的情景。我有一个下拉列表,它从表中获取表列表。现在,如果我选择其中一张表,它将通过以下代码显示所有列:
<%
String columnsql = "SELECT COLUMN_NAME as ColumnName FROM information_schema.columns "
+ "WHERE table_name = '"+ TableName + "' ORDER BY ordinal_position";
PrintDebug.println("Table:" + TableName);
ResultSet myRs = aDbManager.retrieveRec(columnsql);
int count =0;
//String[] arraycolumn;
//boolean[] arraycheckbox;
//String[] arraysearch;
while (myRs2.next()) {
columnname = myRs2.getString("ColumnName");
//PrintDebug.println("Column"+count+": " + columnname);
%>
<label id="lblcolumnname<%=count %>" value=<%=columnname%>> <%=columnname%></label>
<input id="chkcheckbox<%=count %>" type="checkbox" value=<%=columnname %>>
<input id="txtsearch<%=count %>" type="text">
<br>
<%
count++;
}
myRs2.close();
%>
所以上面的代码将生成我选择的表中的每一列。我使用javascript通过onchanged刷新。
这里的问题:我应该如何存储列,不管复选框是否被选中,以及查询字符串中的搜索文本框。
抱歉我的英语很差,很困惑我应该在这个动态生成和存储上使用的逻辑传递给其他页面/servlet以处理复选框的查询字符串是否被选中或不决定是否显示该列,搜索文本框是"" 或得到过滤的价值。
正在考虑通过数组解决方案,在动态方面是否有可能?因为我必须在另一端检索它来处理查询。谢谢。