如何分割sql查询结果以填充下拉列表

本文关键字:结果 查询 填充 下拉列表 sql 何分割 分割 | 更新日期: 2023-09-27 17:49:33

数据集是这样的:

Spec1                                           Spec2                                           Spec3   Spec4   Spec5   Spec6   Spec7   Spec8   Spec9   Spec10
<a href="/spe.aspx?id=10" title="AI">AI</a>     <a href="/spe.aspx?id=40" title="BA">BA</a>

我想填充一个下拉列表:

<asp:dropdownlist ID="ddl1" runat="server"></asp:dropdownlist>

所以HTML输出是这样的(每一列而不是每一行的条目):

<select>
    <option value="/spe.aspx?id=10">AI</option>
    <option value="/spe.aspx?id=40">BA</option>
</select>

如何分割sql查询结果以填充下拉列表

您需要使用类似这样的东西来解析它。你需要(可能)使用一个foreach循环和第二个DataSet(或Dictionary<string, string>)对象,你可以把值放进去,然后使用数据绑定你的DropDownList。

编辑:没有HTML敏捷包:

Dictionary<string, string> dict1 = new Dictionary<string, string>();
foreach (DataRow r in my.Tables[0].Rows)
{
    foreach (DataColumn c in my.Tables[0].Columns)
    {
        if (r[c] == DBNull.Value || r[c].ToString().Trim() == "")
           continue;
        string spec = r[c].ToString();
        string href = spec.Substring(spec.IndexOf("href=");
        href = href.Trim("'"").Substring(0, spec.IndexOf("'""));
        ....
        dict1.Add(href, val);
    }
}
ddl1.DataSource = dict1;
ddl1.DataBind();

你可能能够得到一个更容易的解决方案使用库,但我不确定如何处理缺乏文档和只有一个元素。但是这应该可以很好地演示。