2014-01-29 116 views
2

我在我的Action類中使用struts2驗證使用validate()方法。 我使用addFieldError()方法添加FieldErrors。字段錯誤顯示在我的表單的每個字段的頂部。改變場景顏色?

Action類: (這證實setMapServerDetails動作)

/*---------------------VALIDATION------------------------------------*/ 
public void validateSetMapServerDetails(){ 

    if(getMapServer().getServerName().length() == 0){ 
     addFieldError("mapServer.serverName", "Name is Required"); 
    } 
} 

的問題是被明文顯示的錯誤,我想在紅色的錯誤。

我該如何將它改爲紅色?

編輯: JSP:

<title>Configure Map Server</title> 

<s:head /> 
</head> 
<body> 

<s:form action="setMapServerDetails" validate="true"> 
    <s:textfield name="mapServer.serverName" label="Server Name"></s:textfield> 
    <s:textfield name="mapServer.serverIp" label="Server IP"></s:textfield> 
    <s:textfield name="mapServer.serverPort" label="Server Port"></s:textfield> 
    <s:textfield name="mapServer.applicationName" label="Application Name"></s:textfield> 
    <s:textfield name="mapServer.remarks" label="Remarks"></s:textfield> 
    <s:submit value="Save"></s:submit> 
</s:form> 
+0

這將是一個CSS問題。 –

+0

@SotiriosDelimanolis:這些守門員struts2增加了自己。它的CSS在哪裏? –

+0

我其實不知道。如果您使用的是自定義標籤,那麼標籤是否可以爲該元素添加一個'style'屬性?我會查看源代碼或找出實際CSS的位置。 –

回答

6

Struts2的增加errorMessage CSS類的錯誤消息。你只需要添加到你的CSS:

.errorMessage { 
    color: red; 
} 

當你把<s:head>標籤也增加了默認的樣式應用到頁面,errorMessage聲明看起來像這樣:

.errorMessage { 
    font-weight: bold; 
    color: red; 
} 
+0

對於fieldErrors和actionErrors都是errorMessage? –

+0

@SiddharthTrikha:它是默認的。 –

0

使用<div></div>,給style屬性

<s:if test="hasActionMessages()"> 
    <div style="color: green;"> 
    <s:actionmessage/> 
    </div> 
</s:if> 
<s:if test="hasActionErrors()"> 
    <div style="color: red;"> 
    <s:actionerror/> 
    </div> 
</s:if> 
1

在Struts2 addFieldError()方法添加一個<s:fielderror>標記到視圖,並且標記的默認css類名稱是errorMessage

.errorMessage { 
    background-color:#FFCCCC; 
    border:1px solid #CC0000; 
    width:400px; 
    margin-bottom:8px; 
} 

如果你想要更多的靈活性(即使用自己的CSS類),可以使用

<s:fielderror cssClass="yourownCSS"> 
    <s:param>mapServer.serverName</s:param> 
</s:fielderror> 
0

Ranuka了良好和正常工作。

有時候最好知道爲什麼我們必須給cs到.erroMessage

當您使用struts驗證時,如果存在驗證錯誤或轉換錯誤,struts將生成錯誤消息,並在標記中默認保存該錯誤消息。 該標籤名稱爲
<span class="errorMessage">Your Error message here</span>標籤。

所以在上面的標籤中很清楚span標籤類是errorMessage,現在您可以將css代碼應用於此類errorMessage

這就是爲什麼在你的CSS,我們使用

.errorMessage { 
    color: red; 
} 

這裏.errorMessage是說明你與class="errorMessage"這是什麼,但錯誤信息標籤應用CSS的所有標籤。

以上解釋將幫助您理解爲什麼您必須應用css到.errorMessage