有没有办法屏蔽YesNoFormat()的输出,这样就不会显示“是”和“否”,而是显示“有效”和“无效”。
<cfset currstatus = YesNoFormat(usrStatus)> //Returns Yes. I want this to return active
在显示之前我可以进行if / else检查:如果“Yes”显示“active”,则显示“inactive”。但是我想避免这种情况,因为我必须在很多地方这样做,所以如果他们有任何屏蔽功能/技术可用于此功能,那么只想联系社区。如果没有,有没有其他选择。如果您需要更多详细信息,请发表评论
答案 0 :(得分:8)
if / else语句的单行版本:
<cfset currstatus = usrStatus ? "active" : "inactive">
答案 1 :(得分:3)
YesNoFormat()
不幸doesn't allow to output different strings。
如果您需要在很多地方使用该功能,那么您应该创建自己的功能:
<cffunction name="boolToString" returntype="string">
<cfargument name="boolVar" type="boolean" required="yes">
<cfreturn boolVar ? "active" : "inactive">
</cffunction>
答案 2 :(得分:3)
你不能YesNoFormat(value, [maskvalue1, maskvalue2])
但你可以YesNoFormat(value) ? "maskvalue1" : "maskvalue2"
并且由于value
必须是数字或布尔值,因此最终会使用
((value) ? "maskvalue1" : "maskvalue2")
<cfset currStatus = ((usrStatus) ? "active" : "inactive") />
答案 3 :(得分:1)
我能看到的唯一方法是使用if语句。
<cfif usrStatus>
<cfset currstatus = "active">
<cfelse>
<cfset currstatus = "inactive">
</cfif>
希望这有帮助。