asp.net使用alert弹出消息框后,页面变空白,内容消失的问题怎么解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net使用alert弹出消息框后,页面变空白,内容消失的问题怎么解决相关的知识,希望对你有一定的参考价值。

我没有猜错的话你用的是response.write("<script>alert();</script>");或者用的是RegisterClientScriptBlock来弹窗的。你细心点的话查看一下源代码,会发现这两种方式弹窗的js代码,会被注册到<form runat=server>这里。这样系统是先来执行弹窗,你点了弹窗的确定按钮后,才会解析后面的具体页面代码的。 解决方式其实也没啥特别的,response.write("<script defer='defer'>alert();</script>");延迟一下这个,让它等内容解析出来了再弹。 或者用而RegisterStartupScript,把脚本注册到</form>之前。 说直接点,两者的相同之处便是将脚本在文档加载完成后在执行。 就是这么个原理。 细心点。 参考技术A 弹出消息框后可能出现页面重新加载的情况,而此时的加载绝大多数说漏掉样式表 参考技术B 你好,不妨把代码贴出来分析下。

使用Asp.net ajax不显示警报消息

使用Asp.net将记录添加到数据库后不显示警报消息Ajax.record成功添加到数据库中.Alert未显示。我将下面的代码附加到下面我尝试过的内容。之后添加记录如何返回ajex成功函数以显示警报(“成功”);

表格设计

<form  id="frmProject" runat="server">
            <div>
                <label class="form-label">First Name</label>     
               <input type="text" id="fname" class="form-control"  />
            </div>
            <div class="form-group" align="left">
             <label class="form-label">Age</label>
                <input type="text" id="age" class="form-control"  />
            </div>
            <div> 
               <input type="button" id="b1" value="add" class="form-control" onclick="addProject()" />

            </div>
        </form>

阿贾克斯

  function addProject() {
                $.ajax({
                    type: 'POST',
                    url: 'insert.aspx',
                    dataType: 'JSON',
                    data: {fname: $('#fname').val(), age: $('#age').val()},
                    success: function (data) {         
                        alert("success");
                        get_all();
                    },
                    error: function (xhr, status, error) {
                        console.log(xhr.responseText);
                    }
                });

                }

insert.aspx

 public static string GetData(string fname, int age)
            {
                SqlConnection con = new SqlConnection("server=.; Initial Catalog = jds; Integrated Security= true;");
                string sql = "insert into record values('" + fname + "','" + age + "')";
                SqlCommand cmd = new SqlCommand(sql, con);
                con.Open();
                cmd.ExecuteNonQuery();
                con.Close();
                return HttpContext.Current.Session.SessionID;
            }  
答案

使用Web方法进行Ajax请求

[WebMethod(EnableSession= true)]
public static string GetData(string fname,int age)    
{    
   // place your logic here
   return HttpContext.Current.Session.SessionID;    
}

您的Ajax请求

$('#b1').click(function () {
    jQuery.ajax({
        url: 'insert.aspx/GetData',
        type: "POST",
        data: {fname: $('#fname').val(), age: $('#age').val()},
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        success: function (data) {
            alert(JSON.stringify(data));
        }
    });
});

以上是关于asp.net使用alert弹出消息框后,页面变空白,内容消失的问题怎么解决的主要内容,如果未能解决你的问题,请参考以下文章

asp.net如何实现alert()弹出对话框后延时2秒再跳转页面。急!!!

ASP.NET如果在页面跳转之前弹出JS的ALERT窗口

ASP.net中alert弹出后自动消失

Asp.Net alert弹出提示信息的5种方法

Asp.net中 弹出alert之后,想通过点击alert中的确定选项 来触发其他事件,如何写代码?

如何在asp.net中弹出可编辑的窗口