gpt4 book ai didi

根据结果​​将反馈标签设置为红色或绿色

转载 作者:太空宇宙 更新时间:2023-11-04 00:24:59 24 4
gpt4 key购买 nike

我正在对我的元素进行 CSS 处理,并希望自定义反馈标签的字体颜色。我的元素分为 3 层(DAL、BLL、普通页面)。在 BLL 中,我捕获了异常,我想这是我要添加 CSS 样式表引用的地方。不幸的是,我无法让它工作,这就是它的样子。

BLL

Public Function deleteCustByCustID(ByVal CustID As Integer) As Boolean
If dataCust.DeleteCust(Cust) Then
Throw New Exception("The customer was removed.")
Return True
Else
Throw New Exception("The customer wasn't removed. Please try again.")
Return False
End If
End Function

ASPX.vb 页面

Try
bllCust.deleteCustByCustID(CustID)
Catch ex As Exception
lblFeedback.Text = ex.Message
End Try

我将 CSS 页面存储在 CSS 文件夹中。我想将字体颜色石灰分配给成功,将字体颜色分配给红色。

非常感谢任何帮助!

最佳答案

另一种选择:如果您已经为“反馈”区域的标记分配了一个 ID 值,并且如果您向该元素添加了一个 runat="server",您可以访问 CssClass 代码隐藏文件中的属性。

举个例子:

标记

<div id="Feedback" runat="server"></div>

代码

Me.Feedback.CssClass="error"

那么你可以在他的回答中使用@rockerest 表示的CSS 规则。

编辑:

好吧,我再次查看了您的代码,发现了一个大问题:您应该永远使用异常作为控制程序流程的方法。这可能是错误 #1。

从您的方法返回更有意义的结果的一种不太常见的方法是封装一个结果对象。这是一个简单的例子:

Public Class Result

Public IsValid As Boolean
Public Message As String

Public Sub New(ByVal isValid As Boolean, ByVal message As String )
IsValid = isValid
Message = message
End Sub

End Class

您将修改当前函数以返回一个 Result 对象而不是 Boolean,并根据您的需要分配 Result 对象的值查询结果:

Public Function deleteCustByCustID(ByVal CustID As Integer) As Result
Dim result as New Result

If dataCust.DeleteCust(Cust) Then
result = new Result( true, "The customer was removed." )
Else
result = new Result( false, "The customer wasn't removed. Please try again." )
EndIf

Return result

End Function

然后,在调用 deleteCustByCustID 方法的任何代码中,您将 Message 属性分配给反馈区域的内容和 CssClass匹配 IsValid 状态。

有道理吗?

编辑 2:

好的,假设您有一个用于错误的 CSS 类“.error”和一个用于错误的 CSS 类“.success”。然后,让我们假设以下代码片段在事件处理程序或类似的东西中:

Dim result As new Result = deleteCustByCustID( 42 )

现在您有一个 Result 对象,它有一个 IsValid 状态值(它可以是 true 或 false)和一个 Message 字符串值.下一步是将消息应用于反馈元素(我在这里假设您使用 ASP.NET Label 控件)Text 属性,然后基于result.IsValid 的值,将正确的类分配给标签的 CssClass 属性:

myFeedbackLabel.Text = result.Message
If result.IsValid Then
myFeedbackLabel.CssClass = "success"
Else
myFeedbackLabel.CssClass = "error"
EndIf

HTH.

关于根据结果​​将反馈标签设置为红色或绿色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7219851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com