JQueryEasyUI架構下的combobox的取值和綁定的方法,easyuicombobox取值
最近做的項目涉及到JQueryEasyUI架構的使用,EasyUI是什嗎?網上解釋說它是來自W3C標準WEB前端專家DHTML精英俱樂部的簡單易用功能強大的輕量級WEB前端JavaScript架構!從這句話的理解來說,我認為它是一種JavaScript架構。
對於最近的使用中,給我的感覺就是,借用官網JqueryEasyUI上的一句話,EasyUI是基於jQuery使用者介面外掛程式的集合,我把它理解成一種外掛程式,不知道有沒有問題。而使用easyui,不需要寫很多的javascript代碼,只需在定義的使用者介面寫一些HTML標記,完成HTML5網頁的架構,所以說在這個架構裡面是沒有伺服器控制項。沒有ruant=“server”。其功能強大,使用方便。
下面就說說EasyUI架構下的combobox,在使用的時候擷取值和綁定值得方法。
在前台,我們通常這麼寫:
<select class="easyui-combobox" id ="cmbName" name="name" ></select>
在牛腩新聞發布系統中和北大青鳥中都講到了控制項中資料繫結的問題,那在這裡能不能也採用那種方法?牛腩新聞發布系統和北大青鳥中講的控制項都是伺服器控制項,但這裡不是伺服器控制項,我們又該怎麼綁定值和擷取值?
綁定值:(方法不止這一個)
可以將這個控制項轉為伺服器控制項。加入runat=“server”,將其裝為伺服器控制項。剩下就同牛腩新聞發布系統和北大青鳥裡面講的伺服器控制項一樣,綁定值。
複製代碼 代碼如下:
<select class="easyui-combobox" id ="cmbName" runat="server" datatextfield ="AdminName" datavaluefield ="AdminID" name="name" style="width: 150px;" ></select>
後台:
protected void Page_Load(object sender, EventArgs e) { noticeInfoBLL Bnotice = new noticeInfoBLL(); DataSet ds = new DataSet(); ds = Bnotice.GetAllList(); DataTable dt = ds.Tables[0]; cmbName.DataSource =dt; cmbName.DataTextField = "AdminName"; cmbName.DataValueField = "AdminID"; cmbName.DataBind(); }
綁定值之後,怎麼擷取裡面的值呢?
擷取值:
var adminname=$("#state").combobox("getText"); //這是擷取combobox中選擇的內容,例如上面綁定的“AdminName” var adminid=$("#state").combobox("getValue"); //這是擷取combobox選擇的值,例如上面綁定的“AdminID”
comboboxc綁定值出現重複:
在combobox綁定值的時候,我還遇到這麼一個問題,在返回的資料中,有很多條,因為我是往combobox中綁定的名字,名字不能重複,但是我從資料庫中返回的資料卻是這樣的:
那麼怎麼解決這個問題呢?
有兩個解決方案:
第一:修改查詢語句,使用SQL SELECT DISTINCT 語句
第二:在後台綁定資料時也可以像這樣綁定:
protected void Page_Load(object sender, EventArgs e) { //if (!Page.IsPostBack) //if (Session["userid"] != null && Session["postid"] != null) noticeInfoBLL Bnotice = new noticeInfoBLL(); DataSet ds = new DataSet(); ds = Bnotice.GetAllList(); DataTable dt = ds.Tables[0]; //去重複的AdminName和AdminID DataView dv=dt.DefaultView ; cmbName.DataSource = dv.ToTable(true, "AdminName","AdminId"); cmbName.DataTextField = "AdminName"; cmbName.DataValueField = "AdminID"; cmbName.DataBind(); }
以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。