2016年10月20日 星期四

ASP MVC 下拉選單處理

下拉選單處理
建立資料存取

Control部分
查詢DB 部分另外於 EF中 撰寫 EFGroup.ListGroup() 回傳上述資料




View 部分的資料



<div class="form-group">
@Html.LabelFor(model => model.GroupNo, "GroupNo", htmlAttributes: new { @class = "control-label col-md-2" })
  <div class="col-md-10">
  @*-- 設定加入 請選擇 --*@
  @Html.DropDownListFor(model => model.GroupNo, ViewBag.GroupNO as SelectList, "-- select a value --", htmlAttributes: new { @class = "form-control" })

  @*-- 自動產生設定 --*@
  @*-- @Html.DropDownList("GroupNO", null, htmlAttributes: new { @class = "form-control" })--*@

@Html.ValidationMessageFor(model => model.GroupNo, "", new { @class = "text-danger" })
  </div>
</div>

2016年10月4日 星期二

WEB 以 [Enter] 切換 TextBox

purpose: 一開始游標就在TextBox裡面, 按Enter會移動到下一個TextBox,最後執行Button_clic


 前提: 用jQuery做,所以專案要安裝jQuery或引用jQuery




step1: 設定各元件的tabIndex屬性

<body>
    <form id="form1" runat="server">
    <div id="testContent">一開始游標就在TextBox裡面, 按Enter會移動到下一個TextBox,最後執行Button_click</div>
        step0.<asp:TextBox ID="text_box_0" runat="server" TabIndex="0"></asp:TextBox>
    <br />
        step4.<asp:TextBox ID="text_box_4" runat="server" TabIndex="4"></asp:TextBox>
    <br />
        step1.<asp:TextBox ID="text_box_1" runat="server" TabIndex="1"></asp:TextBox>
    <br />
        step3.<asp:TextBox ID="text_box_3" runat="server" TabIndex="3"></asp:TextBox>
    <br />
        step2.<asp:TextBox ID="text_box_2" runat="server" TabIndex="2"></asp:TextBox>
        <br />
        step5.<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" TabIndex="5" />
        <br />
        Counter<asp:Label ID="Label1" runat="server"></asp:Label>
        <br />
       
    </form>
</body>




step2: 引用jQuery(以下寫在head裡面), 此jQuery路徑放在/Script目錄內
    <script src="../Scripts/jquery-3.1.1.js"></script>




step3: 各textbox加入enter2tab的方法(將jquery.enter2tab.js加入專案,與此程式同一個目錄下)
    <script type="text/javascript" src="jquery.enter2tab.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            Page_Init();
        });
        function Page_Init() {
            $('input[type=text][id^=text_box]').enter2tab();//只有text_box*才有用jQuery設定,button並沒有設定
        }
    </script>




step4: codebehind,設定預設游標位置,撰寫按鈕要做的事情
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
                initControl();
        }
        private void initControl()
        {
            //先設定TextBox1的TabIndex屬性
            //然後使用TextBox1.Focus方法,設定焦點
            text_box_0.Focus();
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (Label1.Text == "") Label1.Text = "0";//這樣就可以知道跑了幾次click
            Label1.Text = (int.Parse(Label1.Text) + 1).ToString();
        }




參考資料:  http://kevintsengtw.blogspot.tw/2011/10/jquery-entertab.html