0

ページにドロップダウンリストとテキストボックスがあり、ボタンをクリックするとButton1_Clickイベントが発生し、テキストボックスとドロップダウンリストの値を取得してデータベースのテーブルに送信すると、結果が表示されます(テーブルに新しく追加された行データベース) グリッドビューで。私の問題は、ページを更新するときにボタンをクリックした後です。つまり、現在のページの再読み込みをクリックすると、ドロップダウンリストの値とテキストボックスの値がテーブルに再度挿入されます。よくわからないけど解決?私のグリッドビューはsqldatasourceを使用しており、これが私のコードです:

   protected void Button1_Click(object sender, EventArgs e)
  {
    int brandid = Convert.ToInt32(BrandDropDownList.SelectedValue);
    String catname = TextBox2.Text;
    SqlConnection cn = new SqlConnection();
    cn.ConnectionString = "server = . ; database = mobile_store ; Trusted_Connection=true";
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = cn;
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.CommandText = "FirstInitialiseCategories";
    cmd.Parameters.AddWithValue("@brandid ", brandid);
    cmd.Parameters.AddWithValue("@catname ", catname);
    try
    {
        cn.Open();
        cmd.ExecuteNonQuery();
        Label1.ForeColor = System.Drawing.Color.Green;
        Label1.Text = "با موفقیت ثبت شد!";
        SqlDataSource2.DataBind();

        GridView1.DataBind();
    }

    catch (Exception ex)
    {
        Label1.Text = ex.ToString();
        Label1.ForeColor = System.Drawing.Color.Red;
        Label1.Text = "خطا در ثبت!";
    }
    finally
    { cn.Close(); }
}
4

2 に答える 2

2

最初の挿入が完了したら、(同じページへの) HTTP リダイレクトを実行できます。これで問題が解決するはずです。

Response.Redirect("samePage.aspx");
于 2013-02-10T18:10:11.923 に答える
0

ドロップダウン リストの最初の項目は何ですか? 最初の項目に null 値を設定し、データベースに値を挿入するときに、テキスト ボックスとドロップダウン リストをクリアするコードを追加できます。

最後に { cn.Close(); Label1.Text =""; ddl.SelectedIndex = 0; }

于 2013-02-10T18:20:38.067 に答える