mvc - 如果有人在不使用javascript或jquery的情况下点击该div,则将css类应用于div

时间:2014-02-28 20:37:35

标签: c# asp.net-mvc asp.net-mvc-4 razor

我正在研究MVC4应用程序

@{
    var = mydivID;
}

<div id="mydivID"></div>

如果有人点击mydiv或它处于活动状态,则添加css class =“active”

喜欢这个:

在有人点击mydiv = <div id="mydivID"></div>

之前

有人点击mydiv = <div id="mydivID" class="active"></div>

我不想使用javascript或jQuery。

请帮助我......提前谢谢你。

1 个答案:

答案 0 :(得分:4)

如果没有JavaScript,您无法动态更改DOM的内容。您唯一的另一种选择是全新的请求周期。

查看

@{
    var active = ViewBag.Active as bool? ?? false;
}

<a href="@Url.Action("ThisAction", "ThisController", new { divClicked = true })">
    <div id="mydivID" class="@(active ? "active" : "")"></div>
</a>

<强>控制器

public ActionResult ThisAction(bool? divClicked)
{
    ViewBag.Active = divClicked.HasValue ? divClicked : false;    
    return View();
}

使用正确模型而不是ViewBag的加分点,但这说明了这个想法。

如果你有多个div并希望它们中的任何一个可以点击,你可以尝试为它们分配不同的ID并将div的ID传递给动作(然后是ViewBag)。