@Razor 引擎 & Jquery in Asp.net MVC

@Razor 引擎
//HtmlHelper自定義方法,完成角色校驗
public static bool RolesIn(this HtmlHelper helper, string Roles)
        {
            var user = HttpContext.Current.User;
            if (!user.Identity.IsAuthenticated || string.IsNullOrEmpty(Roles) || Roles.Trim().Length == 0)
                return false;
            var roleArray = SplitString(Roles);
            if (roleArray.Length == 0) return false;
            return roleArray.Any(a => user.IsInRole(a));
        }
public static string[] SplitString(string original)
        {
            return (from o in original.Split(new char[] { ',' })
                    let trimmed = o.Trim()
                    where !string.IsNullOrEmpty(trimmed)
                    select trimmed).ToArray<string>();
        }
   
//頁面引用,全路徑 
@{ 
   Layout = "~/Areas/Admin/Views/Shared/_nonSalesLayout.cshtml";
}
//Body 佔位符
<div id="main_body">
   @RenderBody()
</div>
//頁面包含,無參數,相對路徑
@Html.Partial("_IncludeFiles")
//頁面包含,無參數,全路徑
@Html.Partial("~/Areas/Admin/Views/Shared/Menu/_nonSalesMenu.cshtml")

//頁面包含,傳參數(Model),額外的參數 ViewDataDictionary
 @model Merchant //設定Model數據源的類型
 @Html.Partial("_Title_Merchant", Model, new ViewDataDictionary { { "highLight", "Merchant" } })
//被引用的頁面接收參數,進行邏輯判斷
 <a href="@Url.Action("Merchant", "Merchant", new { id = Model.MerchantID })"  style="@(ViewData["highLight"] == "Merchant" ? "background-color:#1c4699" : "")"  >Merchant</a>
 
 
//創建CheckBox 複選框,綁定Model數據
  @Html.CheckBox("MerchantOtherSetting.FixedCustomerCode", Model.MerchantOtherSetting.FixedCustomerCode ?? false)
  //創建帶校驗的輸入框TextBox
@Html.TextBox("Amount", 25, new { @class = "decimalInput" })
 
 
 
 
//頁面創建DropDownList,默認選中項,並且添加樣式
 @Html.DropDownList("Searchtype", new List<SelectListItem> {
                    new SelectListItem{ Text="Account #",Value="MerchantID"},
                    new SelectListItem{ Text="DBA",Value="DBA",Selected=true},
                    new SelectListItem{ Text="MID",Value="MID"},
                    new SelectListItem{ Text="Phone",Value="Phone"},
                    new SelectListItem{ Text="RepID",Value="RepID"},
                    new SelectListItem{ Text="TaxID",Value="TaxID"},
                    new SelectListItem{ Text="EVO BE #",Value="EVOBENumber"}
                    }, new { style = "border:none;" })
//頁面創建超鏈接,指定Area名
<a href="@Url.Action("Report", "Report", new { Area = "Admin" })">Advanced Report</a>
//頁面創建異步連接
//第一個參數爲 要顯示的文字(注意文字不能爲null或者"",否則會報異常)
//第二個參數爲指定的 Action名字
//第三個參數爲路由參數
//第四個參數爲指定異步參數(UpdateTargetId:成功之後,更新的元素html;HttpMethod:指定異步方式get or post or other;OnSuccess 成功之後要調用的函數名)
 
  @Ajax.ActionLink("BC Sales Month", "LastYearSalesAndTicketInfoColumn", new { type = "BCSales", merchantId = Model.MerchantID }, new AjaxOptions
                        {
                            UpdateTargetId = "salesAndticketInfo",
                            HttpMethod = "Get",
                            OnSuccess = "SalesAndTicketInfoOpen"
                        }):
      
      
//Jquery裏的Ajax參數 
            $("body").addClass("loading");
            var form = $("#reminder").find('form');
            var btn = $(this).attr("name");
            var addInfo = { name: btn, value: '1' };
            var data = form.serializeArray();
            data.push(addInfo);     
$.ajax({
                url: "@Url.Action("SaveReminder", "Home")",
                data: data,
                type: 'POST',
                success: function () {
                    $("#reminder").dialog("close");
                    $("body").removeClass("loading");
                    if (btn == "outlookreminder") {
                        window.location.href = "@Url.Action("DownloadICSReminder", "Home")";
                    }
                }
       });

//@razor 異步表單提交   
  <div id="dialogVerifyAddress" class="dialogPanel" title="Verify Address">
        @using (Ajax.BeginForm("UpdateAddressByUSPS", "Merchant",
            new AjaxOptions
            {
                HttpMethod = "Post",
                OnBegin = "show",
                OnComplete = "hide",
                OnFailure="fail",
                OnSuccess = "CheckAddressSuccess",
            }, new { id = "VerifyAddressForm" }))
        {
            @Html.Partial("_Merchant_NameAndAddress_VerifyAddress")
            <div>
                <input type="hidden" id="UpdateFrom" name="UpdateFrom" value="omega" />
                <input type="hidden" id="AddressType" name="AddressType" value="DBA" />
                <input type="hidden" name="MerchantID" value="@Model.MerchantID" />
            </div>
        }
    </div>
//Jquery validate 表單校驗
 $("#ShippingForm").validate({
        rules: {
            Amount: {
                required: true,
                range: [0, 9999]
            },
            ShippingOper: {
                required: true
            },
            RepId: {
                required: true
            }
        }
    });
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章