将相同的标签分组并一起更改文本-c#/Javascript

将相同的标签分组并一起更改文本-c#/Javascript,c#,javascript,asp.net-mvc,razor,C#,Javascript,Asp.net Mvc,Razor,我有一个asp.net C#MVC Razor视图,允许用户将输入字段的单位从公制更改为英制。大约有十几个标签需要同时更改为相同的文本,没有例外(“mm”=>“inch”和“visa verse”) 由于dotnet框架要求每个元素都有唯一的ID字段,所以我试图找到另一种方法将它们组合在一起,并在客户端更改它们 给每个人一个唯一的ID,并在if/then语句中分别调用每个人来切换相同的测量系统,这似乎很愚蠢。一定有更好的办法 我试图使用@ViewBag,但我发现javascript只能读取值,不

我有一个asp.net C#MVC Razor视图,允许用户将输入字段的单位从公制更改为英制。大约有十几个标签需要同时更改为相同的文本,没有例外(“mm”=>“inch”和“visa verse”)

由于dotnet框架要求每个元素都有唯一的ID字段,所以我试图找到另一种方法将它们组合在一起,并在客户端更改它们

给每个人一个唯一的ID,并在if/then语句中分别调用每个人来切换相同的测量系统,这似乎很愚蠢。一定有更好的办法

我试图使用@ViewBag,但我发现javascript只能读取值,不能在客户端更改它

@Label(“display_units”,“mm”,new{id=“lbl_units”})


感谢您的帮助和建议。

KnockoutJS就是为了解决这类问题而编写的,即将viewmodel绑定到视图

为标签提供一个公共css类,如“显示单元”。然后从Javascript代码中,您可以使用jQuery查找该类的所有标签并更改文本:

$(".display-units").text('mm');

简单!这就是我要找的。对于使用此选项的任何人,请确保关闭报价$(“.display units”).text('mm');很高兴知道。我将不得不把它添加到我要学习的东西列表中。这非常简单,而且对解决这个具体问题很有帮助。与其他框架不同,它不尝试做所有事情,只做了一件非常好的事情。