2017-02-21 61 views
0

我在控制器更改HTML elemts风格5

if(validDate<DateTime.Now) 
{ 
    //TODO 
} 

我想做什么做的,如果检查是隐藏,如果这种说法我认为一个特定的按钮是真的,否则显示它。我也在前端使用jQuery。 有人可以帮我操纵html元素,按钮,从控制器,例如添加一个风格类或什么? 在这种情况下,我需要从控制器进行更改,而不是从jquery中进行更改,但如果需要,我可以使用jquery。

+3

这很容易和核心之一ASP.NET MVC的概念。我强烈建议您阅读更多文档,例如:https://docs.microsoft.com/zh-CN/aspnet/mvc/overview/older-versions/mvc-music-store/mvc-music-store-part -3(一旦你有一个ViewModel,很容易将'IsDateValid'这样的'bool'属性设置为'true'或'false',并在View中查看是否显示一个按钮 – thmshd

+0

你能否提供给我我的情况的一个例子答案?我知道这是非常基本的,但... – Arianit

回答

2

您需要使用模型(又名ViewModel),@thomashaid已经给你一个有用的文章的评论:Views And ViewModels

在MVC Project的“Models”文件夹中创建一个类。就像这样:

public class MyViewModel 
{ 
    public bool ShowButton { get; set; } 
} 

然后在你的控制器,创建ViewModel类的对象,并分配相应的值到ShowButton财产。然后通过视图模型,以返回视图:

public ActionResult MyAction() 
{ 
    var myViewmodel = new MyViewModel();´ 

    if(validDate < DateTime.Now) 
    { 
     myViewModel.ShowButton = true; 
    } 

    return View(myViewModel); 
} 

最后,使用剃刀语法在视图中操作将返回给客户端的HTML代码:

@model MyViewModel 

@if (Model.ShowButton) 
{ 
    <Button>now you see me</Button> 
}