0

我想知道是否可以在服务器标签中使用 if 语句或 try catch 块?IE:

'<%= if(grid!=null){((DropDownList)this.grid.FindControl("SRPType")).ClientID} %>'
4

3 回答 3

1
<% try { %>

    <%= (grid != null) ?
            ((DropDownList)this.grid.FindControl("SRPType")).ClientID : ""
    %>
<% }
   catch {
    ... exception handling
   }
%>
于 2012-06-14T08:03:59.420 回答
1

不要使用 <%= %> 语法,而是使用 <% %> 并调用Response.Write来写入输出值,例如:

<%
    if(grid!=null)
    {
       try
       {
           var myList=(DropDownList)this.grid.FindControl("SRPType");
           if (myList!=null)
               Response.Write( myList.ClientID);
           else
               Response.Write("Where's my listbox?");
       }
       catch(Exception exc)
       {
          //Report error, maybe warn user
       }
    }

%>
于 2012-06-14T08:04:27.357 回答
1

不知道异常,但是您始终可以使用内联 if 语句...

<%=(grid != null ? ((DropDownList)this.grid.FindControl("SRPType")).ClientID : "" )%>
于 2012-06-14T08:05:59.080 回答