模板列里的服务器端HTML控件提示服务器标记的格式不正确的问题

在使用GridView的模板列时,有时候需要这么使用:
<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") %>        (可以)
原文地址:https://www.cnblogs.com/Ricky81317/p/1208084.html