让 GridView 中的 TemplateField 执行 Server.HTML-2

作者:vkvi 来源:ITPOW(原创) 日期:2009-12-4
<asp:TemplateField>
    <ItemTemplate>
        <input type="text" value='<%# Eval("CompanyName") %>'>
    </ItemTemplate>
</asp:TemplateField>

如相代码,如果 CompanyName 中含有一个单引号,那么输出时单引号后面的结果就会显示不出来,因为其 HTML 代码形如:

<input type="text" value='<b>b</b>"'end'>

end 就会被显示不出来。

解决此问题的办法是使用服务器端控件:

<asp:TextBox runat="server" Text='<%# Eval("CompanyName") %>'></asp:TextBox>

此时输出结果形如:

<input name="ctl00$_main$GridView1$ctl02$ctl00" type="text" value="&lt;b>b&lt;/b>&quot;'end" />

相关阅读

相关文章