<label style='display: <%=cainayisheng %>'>
<% if (Convert.ToString(Session["account"]) == this.HiddenFieldName.Value) //提问人名字
{%>
<% if(Convert.ToString(Session["account"])!= Eval("uaccount"))//回复人名字
{%>
<asp:Button ID="Button1" runat="server" Text="采纳为最佳答案" CommandName="Button1" CommandArgument='<%# Eval("aid")%>' />
<%}
}%>
</label>
<% if (Convert.ToString(Session["account"]) == this.HiddenFieldName.Value) //提问人名字
{%>
<% if(Convert.ToString(Session["account"])!= Eval("uaccount"))//回复人名字
{%>
<asp:Button ID="Button1" runat="server" Text="采纳为最佳答案" CommandName="Button1" CommandArgument='<%# Eval("aid")%>' />
<%}
}%>
</label>
<asp:Button ID=\"Button1\" runat=\"server\" Text=\"采纳为最佳答案\" CommandName=\"Button1\" CommandArgument=\"+Eval("aid")+"\" /> :""%>
用三元操作符,没测试
或在后台判断
不用改了.你的代码达不到你的想要的效果.
里面的Button的CommandArgument 它是不会去计算<%#Eval("aid")%>的.
你到会发现,你取到的CommandArgument值是"<%#Eval("aid")%>" 这个字符串,而不是计算出来的aid.
包括你前面的服务端代码里面的Eval.你还是要么改成.cs代码控制,要么用HTML控件,而不是用服务端控件
<% if (Convert.ToString(Session["account"]) == this.HiddenFieldName.Value) //我要做一个问答~ 先用session判断这是问题是否是本人提问
{%>
<%if(Convert.ToString(Session["account"])!= Eval("uaccount"))//回复人名字是否是自己的
{%>
<asp:Button ID="Button1" runat="server" Text="采纳为最佳答案" CommandName="Button1" CommandArgument=' <%# Eval("aid")%>' />
<%}
}%> 就是这样~~ 喵~~