使用按钮值访问按钮背后的 asp.net 代码
Posted
技术标签:
【中文标题】使用按钮值访问按钮背后的 asp.net 代码【英文标题】:asp.net code behind accessing button using button value 【发布时间】:2021-04-25 09:36:29 【问题描述】:我正在创建表单验证。我的 .cshtml 上有这些按钮。当用户点击它时,会在其上添加一个 css 类(选中)。
<button type="button" ID="btn_100" runat="server" class="selected">100</button>
<button type="button" ID="btn_200" runat="server">200</button>
....
<button type="button" ID="btn_600" runat="server">600</button>
一旦用户提交表单,它将被验证,如果失败,它应该保留按钮类,或者只是保持按钮状态。
我在想的是使用其值从后面的代码中定位按钮。在 asp.net 中是否有类似的 jQuery 选择器?
$('button[value="100"]");
或者有一个动态按钮变量,像这样
btn_(value_selected).Attribute.Add("class","selected");
有什么建议吗?蒂亚!
【问题讨论】:
【参考方案1】:您可以在后面的代码中修改样式或任何内容。
但是,您必须“找到”控件。
所以说你可以这样做:
Dim btn1 As Button
btn1 = Me.FindControl("Button1")
btn1.Style.Add("border-radius", "5px;box-shadow: 1px 2px 5px #666;")
注意我们如何提供“字符串”值来获取/查找按钮。
C#
Button btn1;
btn1 = this.FindControl("Button1");
btn1.Style.Add("border-radius", "5px;box-shadow: 1px 2px 5px #666;");
请注意,样式的“添加”实际上与设置非常相似 - 如果您说意外添加上述样式设置两次 - 它不会累积(所以如果样式设置存在 - 它会被替换)。
【讨论】:
感谢您的回复。如何通过值找到控件? 在大型机、桌面、基于 Web 的大量 javascript 上编写了 20 多年的代码,以及从 android 软件到大型石油公司漏油模拟的 20 年代码?这些年来,我从来没有需要通过控件中的“值”来查找、引用控件。要么是一些如此奇怪、如此疯狂、如此不寻常的东西,以至于我完全不知所措,或者我根本没有理解或理解你的问题?当然,人们可能想要查找或获取一行数据,但这意味着您应该在这里使用表格或某种网格或重复器,其中也包括重复按钮。 您当然可以循环/遍历所有控件,并为每个控件查找一个值 - 但正如我所说 - 这似乎是错误的。因此,您可以对所有控件执行 for/each,并检查每个控件的值。您的问题没有暗示或询问甚至暗示这将是一项要求。我的示例非常轻松地展示了如何使用字符串来获取/引用控件值 - 以便在运行时进行解析。但是搜索控件的值?当然,您可以这样做 - 但您要迭代网页中的所有控件。 抱歉这个菜鸟问题,刚开始学习c#和asp.net。无论如何感谢您的回复。我已经想通了。调用代码隐藏完成了这项工作。<button class="<%= IsSelected("btn_100") %>">100</button>
当然,但是你发现的并不意味着你找到一个“值”你正在指定一个控件 - 所以正如我所说,如果我的名字是 Albert,我不会搜索 Albert,但可能会搜索或查找或使用名为 FirstName 的控件。正如我所说,我想一个人可能有一个数据网格并希望在该网格中找到一个特定的 PK id,但最终我们会通过给定的控件或一组控件来寻找一个值。我们不是在寻找一个值,而是希望一个给定的控件获得一些值,就像你的 btn_100 是一个给定的控件一样。所以在一天结束的时候,你是通过一些控制来寻找的——而不是价值以上是关于使用按钮值访问按钮背后的 asp.net 代码的主要内容,如果未能解决你的问题,请参考以下文章