首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >下拉列表以显示所有值

下拉列表以显示所有值
EN

Stack Overflow用户
提问于 2015-10-06 23:05:26
回答 1查看 946关注 0票数 1

我一直在研究asp.net。我有一张有网格视图的登记表。网格视图包含下拉列表id (Ddl)。

当我选择网格视图时,所有的值都必须在注册表单中的适当字段中显示。对于ddl,从网格视图中的ddl id值,适当的下拉列表文本显示在下拉列表中。 问题出现在这里,下拉列表只显示适当的值,而且也不能单击并填充更新按钮。

在这里输入图像描述

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cmd.CommandText = "SELECT * FROM COMPANY WHERE COMPANYID='" + dbCompany + "'";
                txtTextBox1.Text = newcmpid;   
                DataTable dt = new DataTable();
                dt.Load(cmd.ExecuteReader());
                ddlCompanyName.DataSource = dt;
                ddlCompanyName.DataTextField = "COMPANYNAME";
                ddlCompanyName.DataValueField = "COMPANYID";
                ddlCompanyName.DataBind();

如何使用所有元素填充DROPDOWNLIST,同时突出显示适当的值

EN

回答 1

Stack Overflow用户

发布于 2015-10-06 23:08:33

要实现选择,只需使用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ddlCompanyName.Items.FindByValue(dbCompany).Selected = true;

但是您也应该注意到,SQL查询是危险的。它允许创建SQL注入攻击。与其连接它,不如使用SQL params。

所以完整的代码可以是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 cmd.CommandText = "SELECT * FROM COMPANY WHERE COMPANYID=@ID;";
 cmd.Parameters.Add("@ID", SqlDbType.Int);
 cmd.Parameters["@ID"].Value = dbCompany;
 txtTextBox1.Text = newcmpid;   
 DataTable dt = new DataTable();
 dt.Load(cmd.ExecuteReader());
 ddlCompanyName.DataSource = dt;
 ddlCompanyName.DataTextField = "COMPANYNAME";
 ddlCompanyName.DataValueField = "COMPANYID";
 ddlCompanyName.DataBind();
 ddlCompanyName.Items.FindByValue(dbCompany).Selected = true;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32985799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文