新手ASP.NET CheckBox練習問題

看板C_Sharp (C#)作者 (小王子)時間9年前 (2016/06/12 19:52), 9年前編輯推噓1(108)
留言9則, 3人參與, 最新討論串1/2 (看更多)
小弟剛學C# 想請教一下我這段程式碼哪邊有問題 我拉了三個checkbox和textbox加上button 假設我要輸入的是 買書勾買哪一本 輸入買幾本 我假設勾了第一個選項輸入3本 可是我按Button他postback後自動幫我勾上了第二項和第三項 第二問題是請問要怎麼只宣示一個order就可以執行相同結果 string orders1 = ""; string orders2 = ""; string orders3 = ""; if (CheckBox1.Checked = true) { orders1 = CheckBox1.Text + ",共" + txt_java.Text + "本 <br />" ; } if (CheckBox2.Checked = true) { orders2 = CheckBox2.Text + ",共" + txt_c.Text + "本 <br />"; } if (CheckBox3.Checked = true) { orders3 = CheckBox3.Text + ",共" + txt_sql.Text + "本 <br />"; } lbl_result.Text = "您已訂購了<br/>" + orders1 + orders2 + orders3; 抱歉如果表達有問題請見諒 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.217.139.61 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1465732348.A.271.html

06/12 20:05, , 1F
是==true不是=ture,=是賦值,而且其實根本不用==ture
06/12 20:05, 1F

06/12 20:06, , 2F
然後比較嚴謹不容易錯的寫法是(true == checkBox.Checked)
06/12 20:06, 2F

06/12 20:07, , 3F
常值放前面,這樣少寫一個 = 就會編譯錯誤提醒你了
06/12 20:07, 3F

06/12 20:08, , 4F
那個ture手誤請自行腦內修正OTZ
06/12 20:08, 4F
感謝前輩~學幾天了還是常忘記=跟==的差別 ※ 編輯: kevin2203 (49.217.139.61), 06/12/2016 20:14:26

06/12 20:14, , 5F
其實根本不用==TRUE吧
06/12 20:14, 5F

06/12 20:18, , 6F
判定條件通常是 == 賦值 = 常用就不會忘了
06/12 20:18, 6F
看來多錯幾次就記得了 ※ 編輯: kevin2203 (49.217.139.61), 06/12/2016 20:21:04

06/12 20:24, , 7F
你還不熟的話 基本上DEBUG你也看不出來哪邊錯了
06/12 20:24, 7F

06/12 20:25, , 8F
你這樣寫的IF 反而不是判斷 而是每行都會執行
06/12 20:25, 8F

06/14 22:50, , 9F
你可以寫成orders+="xxxx" 這樣就只需要宣告一個orders
06/14 22:50, 9F
文章代碼(AID): #1NNKpy9n (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #1NNKpy9n (C_Sharp)