<asp:TemplateField>
<ItemTemplate>
<input id=ttChk name=ttChk type=checkbox value="<%#Eval("SaleOrderID") %>" onclick="OnTTTableCheck(this)" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<ItemTemplate>
<input id=ttChk name=ttChk type=checkbox value="<%#Eval("SaleOrderID") %>" onclick="OnTTTableCheck(this)" runat="server" />
</ItemTemplate>
</asp:TemplateField>
结果在运行的时候会提示说ttChk这个控件的服务器标记的格式不正确,到底哪里不正确呢?
原来问题出在双引号,把value属性的值用单引号引起来就正确了,或者说把绑定语句用单引号引起来或者不要用引号才行,用双引号就不行。对比:
value="<%#Eval("SaleOrderID") %>" (不行)
value='<%#Eval("SaleOrderID") %>' (可以)
value=<%#Eval("SaleOrderID") %> (可以)