以下代码我加在<%%>没错,但是在<script languge=c#></script>中就提示错误.String b="中国人";
String a="<script>alert('"+b+"')</script>";
Response.Write(a);

解决方案 »

  1.   

    String b="中国人";
    String a="<script>alert('"+b+"')<"+"/script>";
    Response.Write(a);
      

  2.   

    把这段代码copy到 editplus 里,就可以看出来
      

  3.   

    xrascal(横刀夺爱)老兄的代码还是报错呀.
      

  4.   

    你把你这个代码文件用 editplus 打开,在editplus 里,你可以看见
    <script>alert('"+b+"');<"+"/script> 这一行前面和后面的颜色是不一样的。
    不一样的地方就是有换行符的地方。
      

  5.   

    String b="中国人";
    String a="<script>alert('"+b+"')<"+"/script>";
    Response.Write(a);xrascal(横刀夺爱)  我不明白 为什么要在</script>里面加"+" ,是连接字符么?
      

  6.   

    可是是一样的错误呀,为什么在<%%>可以正常使用呢?
      

  7.   

    String b="中国人";
    String a="<script>alert('"+b+"');</script>";
    Response.Write(a);
      

  8.   

    xrascal(横刀夺爱)好的,谢谢指教
      

  9.   

    晕掉了.yegucheng的代码不是和我的一样吗?
    我现在是问为什么在<script>中会报错,而在<%%>中就可以正常使用呢?
      

  10.   

    我的習慣是寫成
    String b="中国人";
    String a="<scr"+"ipt>alert('"+b+"')</scr"+"ipt>";
    Response.Write(a);因為如果按你寫法有可能讓解釋器誤會你這個</script>是表示<script languge=c#></script>的那個</script>
      

  11.   

    但在<%%>中就不會存在這個誤解了
      

  12.   

    其实这种问题我也是莫名其妙,从表面上看,代码并没有什么错误,但就是出现了换行符,可是同样的代码,我新建了一个aspx 页,在新建的页面中重新输入一遍同样的代码(不是copy),运行却正确。遇到这种情况,我就要把有换行符的代码copy到editplus里找出换行符,用"" +"" 连接字符串,就好了。
      

  13.   

    结构或接口成员声明中的标记“(”无效源错误:行 9:  String b="中国人";
    行 10: String a="<script>alert('"+b+"')"+"</sc"+"ript>";
    行 11: Response.Write(a);======================================error
    行 12: </script></body>
    行 13: </html>
     
      

  14.   

    String a="<script>alert(/'"+b+"/')"+"</sc"+"ript>";
    单引号前加转义符/试一下。你用response写到页面里的东西,写进去的时候就被解析了一下,所以特殊字符都要加转义符。
      

  15.   

    对不起,转义符是\
    String a="<script>alert(\'"+b+"\')"+"</sc"+"ript>";
    再试一下
      

  16.   

    有这么麻烦的吗?
    Response.Write("<script language='javascript'>alert("+b+")</script>");
      

  17.   

    Response.Write(@"<script language='javascript'>alert("+b+")</script>");
      

  18.   

    没用过把c#写在前台的,试试这样行不行:<script languge="c#" Runat="Server">
    String b="中国人";
    String a="<script>alert('"+b+"')</script>";
    Response.Write(a);
    </script>
      

  19.   

    这是在VB里面的,可以哦Sub Page_Load(Sender As Object, E As EventArgs)
        dim a as string
        dim b as string
        b="中国人"
        a="<script language='javascript'>alert('"  & b & "');<" & chr(47) & "script>"
        Response.Write(a)
    End sub你把</script> 把它拆开
      

  20.   


    <script language="c#" Runat="Server">
    protected void Page_Load(Object sender, EventArgs e)
    {
    String b="中国人";
    String a="<script language='javascript'>alert('" + b  +  "')<" + (char)47 + "script>";
    Response.Write(a);
    }
    </script>这是C#里面的。还有出现 结构或接口成员声明中的标记“(”无效 错误,
    是因为你在<script language=”c#” runat=”server”></script>中直接用了response.write,好象这样不行。必须写在{}里面。