if (txtsearch.Text == "" || txtsearch.Text == null)
        {
            Response.Write("<script language=javascript>window.alert('查询内容不能为空');</script>");
            return;
        }
为什么我的网页一执行了这个代码即弹出一个提示框之后,网页的布局会变乱,字体变大,图片变重复呢?
大家也可以到我的网站看看这个问题,www.txgaozhao.com打开网页后在最右上角的搜索栏里,直接点搜索,就可以看见这个问题了。
请高手帮我解决啊!!!
感恩不尽!!!
困惑了两个月的难题,我要疯了!!!

解决方案 »

  1.   

    this.Page.RegisterClientScriptBlock("msg", "alert('zzzzz')");
      

  2.   

    一点登录就出现这种错误
    回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
      

  3.   

    呵,写标准点嘛:
    Response.Write("<script language=\"javascript\">window.alert(\"查询内容不能为空\");</script>");
      

  4.   

    应该和你用了无刷新有关系用这个this.Page.RegisterClientScriptBlock注册 javascript
      

  5.   

    是这样的       ClientScript.RegisterClientScriptBlock(this.GetType(),"msg", "alert('ddd');",true);
      

  6.   

    我在自己做网站时也遇到这问题~我用的一个比较笨解决方法~就是在body里面加css
    css里面把字显示为12px;
    至于图片重复,肯定是你布局被破坏了~~~而图片用的是背景,又没设置背景的重复样式为no-repeat,所以背景图片会重复.
      

  7.   

    一点登录就出现这种错误
    回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
     ==========================================================
    上面的错误应该是你在Page_Load()中没有用 if(!Page.IsPostBack){}而导致的回发验证出现错误。你加上 看下 
      

  8.   

    至于表格框架被破坏,你可以试一下,在alert后重新加载此页 ,用 Response.write("<script>location='ssss.aspx';</scipt>")
      

  9.   

    上面的错误应该是你在Page_Load()中没有用 if(!Page.IsPostBack){}而导致的回发验证出现错误。你加上 看下 用了的呀!!
      

  10.   

    return;
    换成exit sub改了之后,错误如下:
    错误 2 找不到类型或命名空间名称“exit”(是否缺少 using 指令或程序集引用?) F:\txgaozhao\Ascx\Search.ascx.cs 23 13 F:\txgaozhao\
      

  11.   

    呵,写标准点嘛:
    Response.Write("<script language=\"javascript\">window.alert(\"查询内容不能为空\");</script>");依然不行!!!
      

  12.   

    可以通过修改css进行调整.
    我遇上过象楼主一样的问题,主要用于注册页面,当提交后,发现数据库有相同用户名,我就弹出窗口,并"后退"一页,回到原来的注册页面(浏览器后退功能,不是转向).页面的字体就变大了.
    后来我只能通过控件td和body字体来更多的限制字体在12px...你可以试试加上
    body {font-size: 12px;}
    td{font-size: 12px;}假设你大部分字都在表格里..
      

  13.   

    if (txtsearch.Text == "" || txtsearch.Text == null)
    {
    Response.Write("<script language=javascript>window.alert('查询内容不能为空');</script>");
    return;
    }
    这个有点问题啊
    txtsearch.Text 永远不会是null
    就算是null
    if (txtsearch.Text == null||txtsearch.Text == ""  ) //顺序也应该这样
    不然null值,你还是报错!另外在asp.net中 Response.Write 后会跑到页面最顶部,html标记前,造成css解析问题。
    解决方法 1
    this.RegisterClientScriptBlock("test","<script language=javascript>window.alert('查询内容不能为空');</script>");
    解决方法 2
    页面放一个控件 Literal控件 ,
    Literal.Text="<script language=javascript>window.alert('查询内容不能为空');</script>";
      

  14.   

    this.Page.RegisterClientScriptBlock("msg", "alert('zzzzz')");
    用了之后,只是刷新页面而已,没有弹出提示框
      

  15.   

    可以通过修改css进行调整.
    我遇上过象楼主一样的问题,主要用于注册页面,当提交后,发现数据库有相同用户名,我就弹出窗口,并"后退"一页,回到原来的注册页面(浏览器后退功能,不是转向).页面的字体就变大了.
    后来我只能通过控件td和body字体来更多的限制字体在12px...你可以试试加上
    body {font-size: 12px;}
    td{font-size: 12px;}假设你大部分字都在表格里..字体变大已经本解决了,非常感激,但是图片重复问题还没有解决!!!
      

  16.   

    你把这个Response.Write("<script language=\"javascript\">window.alert(\"查询内容不能为空\");</script>");  
    写成 label.text = ("<script language=\"javascript\">window.alert(\"查询内容不能为空\");</script>"; 
    在page.onload中写  label.text = “”;
      

  17.   

    我在自己做网站时也遇到这问题~我用的一个比较笨解决方法~就是在body里面加css
    css里面把字显示为12px;
    至于图片重复,肯定是你布局被破坏了~~~而图片用的是背景,又没设置背景的重复样式为no-repeat,所以背景图片会重复.no-repeat在哪儿加啊?怎么加呢??
    我用的是这个background-image:url(Images/top0bg.jpg)
      

  18.   

    你把这个Response.Write("<script language=\"javascript\">window.alert(\"查询内容不能为空\");</script>");  
    写成 label.text = ("<script language=\"javascript\">window.alert(\"查询内容不能为空\");</script>"; 
    在page.onload中写  label.text = “”;但是我只想要弹出一个提示框啊,况且没有合适的地方放label标签啊!
    谢谢!!!
      

  19.   

    this.Page.RegisterClientScriptBlock("msg", "<script>alert('zzzzz')</script>");
    没有<script>当然不行了!Literal 不设置值的时候他是空的。可以扔在页面任何位值 ,label会产生span标记
      

  20.   

    至于表格框架被破坏,你可以试一下,在alert后重新加载此页 ,用 Response.write("<script>location='ssss.aspx';</scipt>")'ssss.aspx'是指什么?是Css.css吗??
      

  21.   

    是这样的       ClientScript.RegisterClientScriptBlock(this.GetType(),"msg", "alert('ddd');",true);错误 2 当前上下文中不存在名称“ClientScript” F:\txgaozhao\Ascx\Search.ascx.cs 23 13 F:\txgaozhao\
      

  22.   

    this.RegisterClientScriptBlock(this.GetType(),"msg", "<script>alert('ddd');</script>",true);
      

  23.   

    这个问题很常见 改成:
    if (txtsearch.Text == "" || txtsearch.Text == null)
            {
                Page.RegisterStartupScript("","<script language=javascript>window.alert('查询内容不能为空');</script>");
                return;
            }
      

  24.   

    给txtsearch 在前台加脚本吧   给LogButton 加onclientclick="li()"function li(){
    var txtsearch=deocument.getElementById("txtsearch").value;
    if(txtsearch==null||txtsearch=="")
    {
    alert('错误');
    return;
    }
    }
      

  25.   

    RegisterClientScriptBlock只是注册而不会帮你调用
    用RegisterStartupScript就会在页面load后调用你注册的js方法了
    所有要用RegisterStartupScript
      

  26.   

    this.Page.RegisterClientScriptBlock("msg", "<script>alert('zzzzz')</script>");
    没有<script>当然不行了!Literal 不设置值的时候他是空的。可以扔在页面任何位值 ,label会产生span标记果然好了,非常感谢您!!!
      

  27.   

    this.Page.RegisterClientScriptBlock("msg", "<script>alert('zzzzz')</script>");Response.Write("<script language=javascript>window.alert('查询内容不能为空');</script>");请问这两者的区别是什么呢 ???
      

  28.   

    Response.Write("<script language=javascript>window.alert('查询内容不能为空');</script>");
    这个会在页面<html>标签前输出
    RegisterClientScriptBlock
    放在body标签后面 做web程序,多看看页面源就知道了,服务器控件,输出怎么都在要前台显示的!
      

  29.   

    this.Page.RegisterClientScriptBlock("msg", "<script>alert('zzzzz')</script>");
    没有<script>当然不行了!Literal 不设置值的时候他是空的。可以扔在页面任何位值 ,label会产生span标记警告 2 “System.Web.UI.Page.RegisterClientScriptBlock(string, string)”已过时:“The recommended alternative is ClientScript.RegisterClientScriptBlock(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202” F:\txgaozhao\Ascx\Search.ascx.cs 23 13 F:\txgaozhao\
      

  30.   

    this.Page.RegisterClientScriptBlock(this.GetType(),"msg", "<script>alert('ddd');</script>",true);
    2.0用这个
      

  31.   


    this.Page.RegisterClientScriptBlock(this.GetType(),"msg", "<script>alert('ddd');</script>",true);
    2.0用这个警告 2 “System.Web.UI.Page.RegisterClientScriptBlock(string, string)”已过时:“The recommended alternative is ClientScript.RegisterClientScriptBlock(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202” F:\txgaozhao\Ascx\Search.ascx.cs 23 13 F:\txgaozhao\
      

  32.   

    this.Page.RegisterClientScriptBlock(this.GetType(),"msg", "<script>alert('ddd');</script>",true);
    2.0用这个错误 2 “RegisterClientScriptBlock”方法没有采用“4”个参数的重载 F:\txgaozhao\Ascx\Search.ascx.cs 23 13 F:\txgaozhao\
      

  33.   

    ClientScript.RegisterClientScriptBlock(this.GetType(),"msg", "alert('ddd');",true);正解,你也可以在弹出后再刷新一下,不过我个人不建议使用太多的JAVASCRIPT脚本
      

  34.   

    你在页面放1个label,然后
    if (txtsearch.Text == "" || txtsearch.Text == null)
            {
                lblMessage.Text = "<script>window.alert('查询内容不能为空');</script>";
                return;
            }
    就好了
      

  35.   

    使用方法不对,要看看行成的JS和CSS是不是有什么不对的地方,再调调!
      

  36.   


    连续点击两次登陆会出错为什么会有这种错误呢??
    我也不太懂。回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
      

  37.   

    回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。这个是什么意思呢?
    看不懂,有高手解释一下吗?
      

  38.   

    笨方法 管用
    在每个 table 和  td 上都加上样式
      

  39.   

    回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。这个是什么意思呢?
    看不懂,有高手解释一下吗?
      

  40.   

    做过asp.net的网页也是很郁闷网页的布局
      

  41.   

    Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('请先回复再提交!');</script>");