市委員会組織部の審査項目--「すべての項目をロードする」

10854 ワード

必要: 
 
   ドロップダウン・ボックスは、ロードする前にドロップダウン・ボックスにデータ「すべて」を追加する内容をロードします.
1つ目は、asp.netコントロール、easyuiのスタイルを使用して、クエリーボタンをクリックして結果を出す必要があります.
2つ目の方法は、easyuiのコントロールを使用します.問題は、「すべて」というidなしを追加し、テストを経てeasyuiコントロールに対してidフィールドをバインドする必要があります.そうしないと、エラー(選択するたびに1つ目)になります.
3つ目は、easyuiのコントロールを使用して、バインドされたidとtextを同じフィールドに設定すればいい!検索ボタンをクリックする必要はありません!
ページ:
 
次に、第1の方法と第3の方法をそれぞれ紹介します.
1つ目の方法:
htmlコード:
  <span>   : </span>
        <asp:DropDownList ID="YearName"  runat="server" editable="false" panelHeight="auto" class="easyui-combobox" required="true" Width="131px"></asp:DropDownList>    
        <span>   : </span>
        <asp:DropDownList ID="UnitsName"  runat="server" editable="false" panelHeight="250px" class="easyui-combobox" required="true" Width="131px"></asp:DropDownList>          
       
        <label class="first txt-green">   : </label>
        <asp:TextBox ID="txtWordName" runat="server"></asp:TextBox>  
        <%--     2014 2 18  ,              ,  SQL   ErrorMessage="         "--%>
            <%--<asp:LinkButton ID="btnSearch" class="btn-lit btn-middle" runat="server" onclick="queryYear()"  ValidationGroup="fuzzyQueryExam"  ><span>  </span></asp:LinkButton>--%>                  
            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"  ControlToValidate="txtWordName" ValidationGroup="fuzzyQueryExam" Display="Dynamic" ></asp:RequiredFieldValidator>
            <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="txtWordName" ValidationGroup="fuzzyQueryExam"
                ErrorMessage="     ,  ,      _!" 
                ValidationExpression="^[a-zA-Z0-9_\u4e00-\u9fa5]+$" Display="Dynamic"></asp:RegularExpressionValidator>
       <%--        2014 2 18  --%>
        <a href="#" class="easyui-linkbutton" onclick="queryYear();" data-options="">  </a><br />
      <br />

JSコード:一般ハンドラへパラメータを渡す
<script type="text/javascript">   
                //              
        function queryYear() {
            //         queryParams 
            var queryParams = $('#dg').datagrid('options').queryParams;
            getQueryParams(queryParams);
            $('#dg').datagrid('options').queryParams = queryParams;  //     
            $('#dg').datagrid('reload');  //       datagrid

        }
        //           ,  
        function getQueryParams(queryParams) {
            var Category = $("#YearName").datebox("getText");
            var UnitName = $("#UnitsName").datebox("getText");
            var txtWordName = document.getElementById("txtWordName").value;
            queryParams.YearName = Category;
            queryParams.UnitName = UnitName;
            queryParams.txtWordName = txtWordName;
            return queryParams;
        }
 </script>

一般的なハンドラ:
 /// <summary>
        ///     --         
        /// </summary>
        /// <param name="context"></param>
        public void Query(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            //===============================================================
            //      :【  id,    ,    ,   】
            string category, startTime, endTime, key, WordName;
            category = startTime = endTime = key =WordName= "";
            //        
            if (null != context.Request.QueryString["YearName"])
            {//        
                if (context.Request.QueryString["YearName"].ToString().Trim() == "  ")
                {
                    category = "";
                }
                else
                {
                    category = context.Request.QueryString["YearName"].ToString().Trim();
                }               
               
            }
            if (null != context.Request.QueryString["txtWordName"])
            {//        
               
                    WordName = context.Request.QueryString["txtWordName"].ToString().Trim();
            }
            if (null != context.Request.QueryString["StartTime"])
            {
                startTime = context.Request.QueryString["StartTime"].ToString().Trim();
            }
            if (null != context.Request.QueryString["EndTime"])
            {
                endTime = context.Request.QueryString["EndTime"].ToString().Trim();
            }
            if (null != context.Request.QueryString["UnitName"])
            {
                //key = context.Request.QueryString["KeyWord"].ToString().Trim();
                if (context.Request.QueryString["UnitName"].ToString().Trim() == "  ")
                {
                    key = "";
                }
                else
                {
                    key = context.Request.QueryString["UnitName"].ToString().Trim();
                }               
               
            }

            //================================================================
            //         :   ,  ,    ,    
            int pageRows, page;
            pageRows = 10;
            page = 1;
            string order, sort, oderby; order = sort = oderby = "";
            if (null != context.Request.QueryString["rows"])
            {//        
                pageRows = int.Parse(context.Request.QueryString["rows"].ToString().Trim());

            }
            if (null != context.Request.QueryString["page"])
            {

                page = int.Parse(context.Request.QueryString["page"].ToString().Trim());

            }
            if (null != context.Request.QueryString["sort"])
            {

                order = context.Request.QueryString["sort"].ToString().Trim();

            }
            if (null != context.Request.QueryString["order"])
            {

                sort = context.Request.QueryString["order"].ToString().Trim();

            }


            //===================================================================
            //      :  +  
            StringBuilder strWhere = new StringBuilder();
            if (WordName != "")
            {
                //ScoreStyleName like '%{0}%' and ", key
                strWhere.AppendFormat(" WordName like '%{0}%' and ", WordName);
            }
            if (key != "")
            {
                strWhere.AppendFormat(" unitName = '{0}' and ", key);
            }
            if (category != "")
            {
                strWhere.AppendFormat(" strYear= '{0}' and ", category);
            }
            if (startTime != "")
            {
                strWhere.AppendFormat(" PublishDate >= '{0}' and ", startTime);
            }
            if (endTime != "")
            {
                strWhere.AppendFormat(" PublishDate <= '{0}' and ", endTime);
            }

            //     and
            int startindex = strWhere.ToString().LastIndexOf("and");//      and   
            if (startindex >= 0)
            {
                strWhere.Remove(startindex, 3);//     and   
            }
            if (sort != "" && order != "")
            {
                //strWhere.AppendFormat(" order by {0} {1}", sort, order);//    
                oderby = order + " " + sort;
            }
            //DataSet ds = Bnotice.GetList(strWhere.ToString());  //      getlist

            //     GetList  
            DataSet ds = wordBll.GetListByPage(strWhere.ToString(), oderby, (page - 1) * pageRows + 1, page * pageRows);
            int count = wordBll.GetRecordCount(strWhere.ToString());//    
            string strJson = ToJson.Dataset2Json(ds, count);//DataSet     Json  
            context.Response.Write(strJson);//       
            context.Response.End();

        }

3つ目の方法:
htmlコード:このドロップダウン・ボックスにバインドされているvalueFieldとtextFieldは同じフィールドにバインドされています.
 <span>    : </span>
        <%--<asp:DropDownList ID="YearName"  runat="server" editable="false" panelHeight="auto" class="easyui-combobox" required="true" Width="131px"></asp:DropDownList>    --%>
        <input id="YearName" class="easyui-combobox"  style="width:180px" editable="false"  data-options=" 
                    panelHeight: 'auto',  
                    valueField: 'stryear',  
                    textField: 'stryear',
                    select:true,            
                    url: 'UnitsQueryWord.ashx?test=GetYear',   
                onSelect: function(rec){                
                    $('#dg').datagrid('reload',{YearName: $('#YearName').combobox('getText')});   
                }
                    " /> 

一般的なハンドラ:ドロップダウン・ボックスで変更されたイベント・パスの値を受信します.
 if (null != context.Request.QueryString["YearName"])
            {//        
                if (context.Request.QueryString["YearName"].ToString().Trim() == "  ")
                {
                    category = "";
                }
                else
                {
                    category = context.Request.QueryString["YearName"].ToString().Trim();
                }               
               
            }

まとめ:
    市委員会組織部の審査プロジェクトを通じてEasyUIを使用して、それに対して一定の理解があって、EasyUIは私达に極めて大きい便利さを持ってきて、私达の仕事を簡単に速くして、しかも私达自身がインタフェースを美化する必要はありません!しかし、それを使用する過程で、その不足と限界もいくつか発見された.ドロップダウンボックスはidをバインドしなければなりません.そうしないとエラーが発生します.そして、接触したばかりの人にとって、何気なく動いても効果がありません.問題がどこにあるのか分かりません.悩んでいます.ここでは簡単にまとめるだけで、後で応用するときに注意しましょう.
    実はこれらの問題は私たちがまだ本当にそれを理解していないことを説明するしかありません.そして、上記の機能を実現するにはいろいろな方法があることを知っています.だめなら、EasyUIの内部コードを直接修正することができます.これは何も問題ではありません.だから、私たちが学ぶことはたくさんあります.みんなで頑張ってください.