直接上图了
各位有没有遇到过这种情况,请看我圈中的两个部分,
StringBuilder 中不能出现<asp:CheckBox等服务端控件,请转换为对应的客户端控件<input
好的,谢谢园友热情帮助。
这是对的,你点那个放大镜看就知道了。vs的监控窗口里是转义过的。生成出来的就是你想要的,如果不对,那一定是其他问题。
大哥,在builder时,生成出来的数据是对的,数据如下:
<ul><li><asp:CheckBox ID="Ckb1" runat="server" Text="办公系统" /></li><li><asp:CheckBox ID="Ckb2" runat="server" Text="发布系统" /></li><li><asp:CheckBox ID="Ckb3" runat="server" Text="业务系统" /></li><li><asp:CheckBox ID="Ckb4" runat="server" Text="系统维护" /></li></ul>
而这个正是我想要的,但此时是builder是StringBuilder。不能直接赋给我定义的String对象。
而我将这个builder.ToString()一下时,就出现了如下数据结果:
<ul><li><asp:CheckBox ID=\"Ckb1\" runat=\"server\" Text=\"办公系统\" /></li><li><asp:CheckBox ID=\"Ckb2\" runat=\"server\" Text=\"发布系统\" /></li><li><asp:CheckBox ID=\"Ckb3\" runat=\"server\" Text=\"业务系统\" /></li><li><asp:CheckBox ID=\"Ckb4\" runat=\"server\" Text=\"系统维护\" /></li></ul>
显然这个结果赋值给我定义的String对象后,然后在前台绑定
<div id="GMdiv">
<%=bMenuString%>
</div>
这样就会出问题了。ToString()后又变成这种了:<asp:CheckBox ID=\"Ckb1\" runat=\"server\" Text=\"办公系统\" /> 就是多了 “\”这个。
哦,刚才没懂大哥意思。应该不是这个问题了,我再找找原因。谢谢大哥。
@izhangxu: 我很清楚的知道你在说什么。你在vs里看到的多的斜杠,是因为转义了。实际生成到页面上是不会有这个斜杠的。你问题的那个截图里,this.bMenuString旁边有个放大镜,点了看就知道了。
@水牛刀刀: 大哥说的很对
楼主放心吧,这个是对的。
嗯,这个如二楼说所。谢谢回答