台灣最大程式設計社群網站
線上人數
597
 
會員總數:246038
討論主題:189624
歡迎您免費加入會員
討論區列表 >> ASP.NET >> blur用在兩個TextBox Asp.Net控制項的CompareValidator上
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
blur用在兩個TextBox Asp.Net控制項的CompareValidator上
價值 : 30 QP  點閱數:598 回應數:7
樓主

Liny
門外漢
0 5
1151 24
發送站內信

捐贈 VP 給 Liny
目的:我是想做一個CompareValidator的練習;所以我拉了兩個Textbox、一個Label、一個Button的ASP.Net控制項

效果:讓Textbox1的值小於或等於Textbox2的值時,會在按下Button後,小於的值會顯示在Label中,等於的值會顯示==在Label中;
至於Textbox1 > Textbox2值時,會讓CompareValidator產生作用,執行ErrorMessage,然後Label裡的值會顯示為空;

問題:但我的狀況是,如果我先執行小於或等於的判斷後再執行大於的判斷,ErrorMessage出現了,但Label中的值卻仍然存在!
因為我在.aspx.cs想了很久,發現沒辦法達到在ErrorMessage出現時,Label會顯示為空,如圖:

所以我想說在.aspx用blur想達到所要的效果(textbox1 > textbox2時,label值不顯示,顯示ErrorMessage),但不知道為什麼,如果只有單一Textbox做ValuetoCompare時,
blur的做法是可行的,但是用成ControltoCompare後,就無法用blur達到效果了,想請問,我應該怎麼辦


.aspx內容如下


.aspx.cs


搜尋相關Tags的文章: [ CompareValidator ] , [ 小於 ] , [ 等於 ] ,
本篇文章發表於2017-09-15 10:35
== 簽名檔 ==

學無止境!
1樓
作者回應

Liny
捐贈 VP 給 Liny 檢舉此回應
圖片不知道為什麼不能顯示
本篇文章回覆於2017-09-15 10:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
最有價值解答

阿哲
捐贈 VP 給 Jerry 檢舉此回應
這是你的前端



你的
var txt1 = $('#<%=Comparetxt1.ClientID %>');
var txt2 = $('#<%=Comparetxt2.ClientID %>');
漏掉.val(),所以取不到Comparetxt1跟Comparetxt2的值,故無法比較

請改成這樣,就符合你的需求了


本篇文章回覆於2017-09-15 16:04
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

Liny
捐贈 VP 給 Liny 檢舉此回應
阿哲您好:
因為本來的寫法是只要改動第一個Textbox後,則原本Label裡的值為空,那我如果改動第二個Textbox,也要有一樣的效果,是僅能跟原本的寫法一樣嗎?



還是有其他做法呢?
因為我如果寫成上述這樣,在F12時會出現如下圖的錯誤!


本篇文章回覆於2017-09-18 10:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

Liny
捐贈 VP 給 Liny 檢舉此回應
為啥不能用縮網址啊= ="貼出來的都變成死圖...錯誤圖如下
本篇文章回覆於2017-09-18 10:32
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

Jerry
捐贈 VP 給 Jerry 檢舉此回應
看起來像 widget.min.js 這個JS出錯,且是使用length屬性時出錯

該程式有參考這個JS? 有的話又用於何處?
本篇文章回覆於2017-09-18 11:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
不錯的參考

Jerry
捐贈 VP 給 Jerry 檢舉此回應
要寫在一起也可以,給兩個Textbox加上class,如下:

JS



HTML,在兩個Textbox加上「CssClass="Comparetxt"」


本篇文章回覆於2017-09-18 13:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

Liny
捐贈 VP 給 Liny 檢舉此回應
非常感謝阿哲和Jerry的回覆!
本篇文章回覆於2017-09-18 15:41
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.