简体   繁体   English

如何在MVC3中使用c#代码使标签可见?

[英]How to make the label visible using c# code in MVC3?

Following is the Label in my view page,以下是我的视图页面中的标签,

 <label id="back"  onclick="BacktoSubmit()"  style="cursor:pointer; text-decoration:underline; color:Blue; padding-left:670px; visibility:hidden;">Back to list</label>

Following is my Controller Method,以下是我的控制器方法,

   public ActionResult TRSkillGradeAvailability(FormCollection frmCollection, string Submit, string Search, string TabType)
    {
        try
        {
            string strLoggedUser = GetLogUser();
            TRSkillGradeAvailabilityModel objTRSkillGradeAvailabilityModel = new TRSkillGradeAvailabilityModel();
            TRSkillGradeAvailabilityModel objTRSkillGradModel = new TRSkillGradeAvailabilityModel();
            TravelReadyCommonModel objTravelReadyCommonModel = new TravelReadyCommonModel();
            string strVertical = string.Empty, strGeo = string.Empty, strGrade = string.Empty, strSkill = string.Empty;
            strVertical = Convert.ToString(frmCollection["ddlVertical"]);
            strGeo = Convert.ToString(frmCollection["ddlGeo"]);
            strGrade = Convert.ToString(frmCollection["ddlGrade"]);
            strSkill = Convert.ToString(frmCollection["ddlSkill"]);
            AssignViewBag(strVertical, strGeo, strGrade, strSkill);


            var button = Submit ?? Search;
            if (button != "Submit")
            {

                if (button == null)
                {
                    button = "Search";
                }
            }
            if (TabType == "1")
            {
                TempData["Tab"] = "1";
                if (button == "Search")
                {                       
                    Label lbl = new Label();
                    lbl.FindControl("back").Visible = true;
                    string strSearchId = string.Empty;
                    strSearchId = Convert.ToString(frmCollection["txtSearch"]).Trim();
                    objTRSkillGradeAvailabilityModel = objTRSkillGradeAvailabilityModel.GetTRPoolData(strVertical, strGeo, strSkill, strGrade, 3, strSearchId, strLoggedUser);
                }
                else if (button == "Submit")
                {
                    if (strVertical == TravelReadyContants.StaticVariable.AllVertical)
                        objTRSkillGradeAvailabilityModel = objTRSkillGradeAvailabilityModel.GetTRPoolData(strVertical, strGeo, strSkill, strGrade, 1, string.Empty, strLoggedUser);
                    else
                        objTRSkillGradeAvailabilityModel = objTRSkillGradeAvailabilityModel.GetTRPoolData(strVertical, strGeo, strSkill, strGrade, 2, string.Empty, strLoggedUser);
                }
            }
            else if (TabType == "2")
            {
                TempData["Tab"] = "2";
                objTRSkillGradeAvailabilityModel = objTRSkillGradeAvailabilityModel.GetMyPoolData(strLoggedUser);
                if (button == "Search")
                {
                    string strSearchId = string.Empty;
                    strSearchId = Convert.ToString(frmCollection["txtSearch"]).Trim();
                    objTRSkillGradeAvailabilityModel.lstTRSkillGradeAvailabilty = objTRSkillGradeAvailabilityModel.lstTRSkillGradeAvailabilty.FindAll(List => List.AssocId == strSearchId);
                }
                else if (button == "Submit")
                {
                    if (strVertical != TravelReadyContants.StaticVariable.AllVertical)
                        objTRSkillGradeAvailabilityModel.lstTRSkillGradeAvailabilty = objTRSkillGradeAvailabilityModel.lstTRSkillGradeAvailabilty.FindAll(List => List.Geo == strGeo && List.Vertical == strVertical && List.SkillName == strSkill && List.GradeName == strGrade);
                    else
                        objTRSkillGradeAvailabilityModel.lstTRSkillGradeAvailabilty = objTRSkillGradeAvailabilityModel.lstTRSkillGradeAvailabilty.FindAll(List => List.Geo == strGeo && List.SkillName == strSkill && List.GradeName == strGrade);
                }
            }

            GetdropdownValues(ref objTravelReadyCommonModel, ref objTRSkillGradModel, 1, string.Empty);
            objTRSkillGradeAvailabilityModel.LoggedInUser = strLoggedUser;
            objTRSkillGradeAvailabilityModel.lstGeo = objTravelReadyCommonModel.lstGeo;
            objTRSkillGradeAvailabilityModel.lstGrade = objTRSkillGradModel.lstGrade;
            objTRSkillGradeAvailabilityModel.lstSkill = objTRSkillGradModel.lstSkill;
            objTRSkillGradeAvailabilityModel.DefaultGeo = objTRSkillGradModel.DefaultGeo;
            objTRSkillGradeAvailabilityModel.DefaultGrade = objTRSkillGradModel.DefaultGrade;
            objTRSkillGradeAvailabilityModel.DefaultSkill = objTRSkillGradModel.DefaultSkill;

            GetdropdownValues(ref objTravelReadyCommonModel, ref objTRSkillGradModel, 2, strGeo);
            objTRSkillGradeAvailabilityModel.lstVerticals = objTravelReadyCommonModel.lstVerticals;
            objTRSkillGradeAvailabilityModel.DefaultVertical = objTRSkillGradModel.DefaultVertical;

            return View(objTRSkillGradeAvailabilityModel);
        }
        catch (Exception ex)
        {
            ILogManager LogManager = new LogManager();
            var frame = new StackFrame(0);
            LogManager.CallLogging(frame, ex.Message, ex.StackTrace);
            return RedirectToAction("Error", "Common");
        }
    }

in this method i've used,在我使用的这种方法中,

     Label lbl = new Label();
     lbl.FindControl("back").Visible = true;

this code to make the label visible while click the search button but it shows 'NullReferenceException' How to fix this issue anyother way to make the label visible when click search button?此代码用于在单击搜索按钮时使标签可见,但它显示“NullReferenceException” 如何在单击搜索按钮时以任何其他方式解决此问题以使标签可见?

You can add one more property to your model of type string like visible您可以向字符串类型的模型中再添加一个属性,例如可见

public string Visibility { get; set; }

Set this model property设置此模型属性

if (button == "Search")
{
         objTRSkillGradeAvailabilityModel.Visibility = "visible";         
}

else
      objTRSkillGradeAvailabilityModel.Visibility = "hidden";         

and in view并且鉴于

<label id="back" name="back" style="visibility:@Model.Visibility"/>

@Html.Label("", "无效的账户 ID 或付款未支付。", htmlAttributes: new { @class = "control-label col", style = "color:#ff0000", hidden="false" })

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM