我在 ms 訪問中有一個名為 tbl_cmpjobdet 的表,其中存盤了作業的詳細資訊。當用戶想要搜索作業時,應該向他顯示所有可用的作業。我已經使用 oledbdatareader 檢索了資料庫記錄,然后將它們用于嘗試在文本框中顯示此資料的回圈。我試圖在 4 個文本框中顯示 4 項內容,即公司名稱、城市、州和作業。當程式運行時,可以正確檢索值,但螢屏上只顯示最后一條記錄,而不顯示前一條記錄。我對所有記錄使用相同的四個文本框。我想顯示所有記錄。這是我正在嘗試的代碼。我在這里宣告文本框
<div>
<ul style="list-style-type:none">
<li>
<asp:TextBox ID="txt_cname" runat="server" BorderStyle="None"></asp:TextBox>
</li>
<li>
<asp:TextBox ID="txt_city" runat="server" BorderStyle="None"></asp:TextBox>
</li>
<li>
<asp:TextBox ID="txt_cstate" runat="server" BorderStyle="None"></asp:TextBox>
</li>
<li>
<asp:TextBox ID="txt_cjob" runat="server" BorderStyle="None"></asp:TextBox>
</li>
<hr />
</ul>
</div>
這是我從資料庫中檢索記錄并將它們顯示在文本框中的地方
con.Open();
OleDbCommand cmd = new OleDbCommand("Select count(*) from tbl_cmpjobdet");
OleDbCommand md = new OleDbCommand("select * from tbl_cmpjobdet");
cmd.Connection = con;
md.Connection = con;
OleDbDataReader dr = md.ExecuteReader();
int i = Convert.ToInt32(cmd.ExecuteScalar())
for(int j=0;j<=i;j )
{
while(dr.Read())
{
cname = dr["cmp_name"].ToString();
city = dr["cmp_city"].ToString();
state = dr["cmp_state"].ToString();
jname = dr["job_name"].ToString();
txt_cname.Text = cname;
txt_city.Text = city;
txt_cstate.Text = state;
txt_cjob.Text = jname;
}
}
現在回圈運行正常,值也被傳遞到文本框,但顯示在螢屏上的值只是最后一條記錄。
uj5u.com熱心網友回復:
聽起來您希望能夠在他們自己的一組文本框中顯示所有記錄。要使用 WebForms 執行此操作,您需要
So a control like a text box can have one value.
but if you want "many", then use a grid control. You can also use a repeater if you not looking for a grid (table) like output.
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/337972.html
