页面上有控件:
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
下面是赋值语句:
txtName.Text = "a&b";
浏览器访问页面源码:
<input name="txtName" type="text" id="txtName" value="a&amp;b" />为什么“&”会被转换成“&amp;”呢?
有没有办法让它不转换?
请赐教。不胜感谢。

解决方案 »

  1.   


    刚试过,没用会变成:“\&amp;”
      

  2.   

    protected void Page_Load(object sender, EventArgs e)
    {    
      Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "document.getElementById('" + txtName.ClientID + "').value='a&b'", true);
    }
      

  3.   

    刚测试了,用客户端赋值,源码也是“&amp;”
      

  4.   

    在<asp:TextBox >切入到<pre></pre>里面<pre
    <asp:TextBox ID="txtName" runat="server"></asp:TextBox>
    </pre>
      

  5.   

    <pre>
    <asp:TextBox ID="txtName" runat="server"></asp:TextBox>
    </pre>
      

  6.   

    还是会出现:
    <input name="txtName" type="text" id="txtName" value="a&amp;b" /> 
      

  7.   

    我想要的结果是:
    <input name="txtName" type="text" id="txtName" value="a&b" />
      

  8.   

    上面代码生成的源代码是这样的
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head><title></title></head>
    <body>
      <form method="post" action="Default2.aspx" id="form1">
    <div class="aspNetHidden">
    <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE3NDI1ODEyMjhkZMLt2MxH4Xab9s0V4px4Rd+80g9nQMpcJwa3LSiFBD66" />
    </div><div class="aspNetHidden"> <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAgLD6fmlBALEhISFC2V6fPbhVGjDlO/Jn3+eHC2/w0CmXhf0obeRWeCtXjZZ" />
    </div>
      <input name="txtName" type="text" id="txtName" />  <script type="text/javascript">
    //<![CDATA[
    document.getElementById('txtName').value='a&b'//]]>
    </script>
    </form>
    </body>
    </html>
    你是怎么看的呢
      

  9.   

    浏览器在编译的时候会自动把&编译成&amp;不知道你为什么要让源文件显示成<input name="txtName" type="text" id="txtName" value="a&b" />这样呢?
      

  10.   

    不会啊,只有这种形式的赋值:txtName.Text = "a&b";才会出现转换,如果Response.Write("a&b");或者<input name="txtName" type="text" id="txtName" value="<%=xxx%>" />是没有问题的.
      

  11.   

    属于安全考虑的。你还可以重写TextBox
      

  12.   

    不知道楼主为什么要这样做哦,这样虽然源代码里显示的是&amp;可是后台获取的时候显示的还是&呀
      

  13.   

    由于要显示越南文所以才这样做
    譬如:Trang chủ
    保存到数据库的形式:Trang ch&#7911;当修改信息的时候Trang ch&#7911;会被浏览器转换为Trang ch&amp;#7911;,就看不到原来的样子了
    需要显示为Trang ch&#7911;才可以只是显示的问题,保存没问题