【问题标题】:How to output a message when query result is [empty string] in ColdFusion?ColdFusion中查询结果为[空字符串]时如何输出消息?
【发布时间】:2020-06-03 18:34:44
【问题描述】:

我有一个用存储过程编写的查询,并且数据转储得很好。一些结果返回[empty string],在这些情况下,我试图输出不同的消息。到目前为止,这是我所拥有的:

循环查询:

<cfloop query="#inactiveAdmins#">
  <tr>
    <td class="text-left">#Admin_Name#</td>
    <td class="text-left">#Dept_Name#</td>
    <td class="text-left">#Acad_Lead#</td>
    <td class="text-left">#Acad_Lead_Email#</td>
    <td class="text-right">#dateFormat(Last_Logon, 'mmm dd, yyyy')#</td>
  </tr>
</cfloop>

在页面顶部,我正在运行这个cfif 语句。

<cfif #inactiveAdmins.Last_Logon# eq "">
  Never Logged On
<cfelse>
  #inactiveAdmins.Last_Logon#
</cfif>

但是,在我的输出中,我仍然得到一个没有消息的显示。

当我尝试在循环内运行条件时,我得到以下信息:

【问题讨论】:

  • 你试过循环内的条件了吗?
  • 所有这些都在&lt;cfoutput&gt; 中吗?
  • @JamesAMohler - 是的。整个页面用&lt;cfoutput&gt;包裹。
  • 有人已经将其添加为答案。我想你可以标记一下。
  • 我没有刷新它来看到那个答案。对此感到抱歉。

标签: coldfusion cfml cfloop cfif


【解决方案1】:

这应该在你的桌子里吗?确保将其包装在 tr 和 td 中。

<cfloop query="#inactiveAdmins#">
  <tr>
    <td class="text-left">#Admin_Name#</td>
    <td class="text-left">#Dept_Name#</td>
    <td class="text-left">#Acad_Lead#</td>
    <td class="text-left">#Acad_Lead_Email#</td>
    <td class="text-right">#(Len(Last_Logon) ? dateFormat(Last_Logon, 'mmm dd, yyyy') : 'Never Logged On')#</td>
  </tr>
</cfloop>

或长格式:

<cfloop query="#inactiveAdmins#">
  <tr>
    <td class="text-left">#Admin_Name#</td>
    <td class="text-left">#Dept_Name#</td>
    <td class="text-left">#Acad_Lead#</td>
    <td class="text-left">#Acad_Lead_Email#</td>
    <td class="text-right">
        <cfif Len(Last_Logon)>
            #dateFormat(Last_Logon, 'mmm dd, yyyy')#
        <cfelse>
            Never Logged On
        </cfif>
    </td>
  </tr>
</cfloop>

【讨论】:

  • 你使用了三元。太棒了。
  • 我可能会使用isDate(Last_Logon) 而不是Len(Last_Logon)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多