2017-10-24 10 views
1

내가 DropdowList에 항목을 추가 해요로 모두 텍스트 및 값을 추가했다. 그러나 사용자가 항목을 선택할 때 작업 할 ID를 추가해야합니다 (대신 이름 대신 작업 할 필요가 없습니다).</p> <pre><code>while (reader.Read()) { dpl.Items.Add(reader["Name"].ToString()); };conn.Close(); </code></pre> <p>그리고에 의해 DropDownList로 (영문)

이 문제를 해결하기 위해 다음을 시도했습니다. solution;

dpl.Items.Add(new ListItem(reader["Name"].ToString(), reader["ID"].ToString())); 

하지만 제대로 작동하지 못했습니다.

텍스트와 값을 모두 추가하고 텍스트 만 표시하려면 어떻게합니까?

편집 :

이 내 DropDownList로의 유일한 HTML 라인입니다 :

<asp:DropDownList ID="dpl" runat="server" OnSelectedIndexChanged="dpl_OnSelectedIndexChanged" AutoPostBack="True" /> 
+0

이 드롭 다운리스트를위한 HTML 코드를 제공하는 ID로 할 무엇이든 OnSelectedIndexChanged

간단한 CSS로 숨겨진 만든다 – Aarsh

+0

내가 너무 제공 한한다 @Aarsh 죄송합니다 방금 추가했습니다. – ipid

+0

try'dpl.DataSource = cmd.ExecuteReader(); dpl.DataTextField = "Name"; dpl.DataValueField = "Id"; dpl.DataBind(); ' –

답변

1

먼저 HTML 코드를 추가 DataSourceId 다음의 gridview와 동일하게 의 SqlDataSource을 제공

당신은 ID와 이름을 모두 얻을 것이다 다음 ID는 ID를 얻을 당신이

+0

죄송합니다. DataSourceId 등을 어떻게 처리해야할지 모르겠다. 그리드보기도 없다. 이것은 나를 위해 새로운 개념이기 때문에 조금 복잡합니다. – ipid

+0

사용하면 매우 편리합니다. 예제가 필요한 경우 질문에 수행 한 작업을 수행하지 않아도됩니다.이 링크를 참조하십시오. https://www.aspsnippets.com/Articles/Populate-Bind-DropDownList-control-using-SqlDataSource-in-ASPNet.aspx – Aarsh