4

ASP.NET アプリケーション (C#) を作成しています。【ビジュアルスタジオ2010】

その中で、JavaScriptを使用してクライアント側のメッセージを使用しようとすると、更新パネルが使用されていないときにメッセージが表示されます。

しかし、ポストバックを防ぐためにアプリケーションに更新パネルを追加するとすぐに、レコードの挿入時にそのようなJavaScriptメッセージが表示されません。

次の方法で、メッセージを表示しようとしています:

Response.Write("<head><script type='text/javascript'>alert('Member Registered Sucessfully')</script></head>");

私のコード:

 try
{
    con.Open();
    cmd = new SqlCommand("insert into register values(@name,@city,@address,@mobile)",con);
    cmd.Parameters.AddWithValue("@name",txtName.Text);
    cmd.Parameters.AddWithValue("@city", ddlCity.Text);
    cmd.Parameters.AddWithValue("@address",txtAddress.Text);
    cmd.Parameters.AddWithValue("@mobile", txtMobile.Text);
    da = new SqlDataAdapter(cmd);
    ds = new DataSet();
    da.Fill(ds);
    int res=cmd.ExecuteNonQuery();
    if (res > 0)
    {
        Response.Write("<head><script type='text/javascript'>alert('Member Registered Sucessfully')</script></head>");
    }
    else
    {
        Response.Write("<head><script type='text/javascript'>alert('Member Not Registered Sucessfully')</script></head>");
    }
    con.Close();

}

どこでマスケを作っているのか教えてください。

私を案内してください。

4

1 に答える 1

8

ScriptManager.RegisterClientScriptBlock以下のように更新パネルを使用している場合

ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('Member Registered Sucessfully');", true)

Response.Write非同期ポストバック中は使用できません。

于 2013-05-17T07:04:12.990 に答える