2013-02-01 25 views
0

我正在創建一個圖庫站點。它繪製數據庫中可用的攝影會話。觸發器在第一個轉發器項目上點擊事件

但是,當用戶第一次打開頁面,沒有攝影課程選擇。所以頁面將是空的。我想爲用戶自動選擇第一個會話。我通過選擇數據庫中的第一條記錄來完成它。但我真的希望如果我能在Page_load內寫一個代碼,自動點擊中繼器中的第一項。

當然,中繼器項目是動態生成的。所以我不知道我是否可以使用JavaScript來實現這一點。

這裏是我的代碼:

protected void Page_Load(object sender, EventArgs e) 
{ 

    DataSet dst = new DataSet(); 
    using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString)) 
    { 
     SqlDataAdapter adbtr = new SqlDataAdapter();     
     adbtr.SelectCommand = new SqlCommand("SELECT * FROM dbo.Select_gallery_names_FN()", con); 
     try 
     { 
      int result = adbtr.Fill(dst); 
      if (result == 0) 
      { 
       return; 
      } 
      cat_repeater.DataSource = dst; 
      cat_repeater.DataBind(); 
     } 
     catch(Exception ex) 
     { 
      Response.Write(ex.Message); 
     } 

    } 

    using (SqlConnection img_con = new SqlConnection(ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString)) 
    { 
     SqlDataAdapter img_adbtr = new SqlDataAdapter(); 
     img_adbtr.SelectCommand = new SqlCommand("select * from dbo.Select_gallery_cat_FN(@img_cat)", img_con); 
     img_adbtr.SelectCommand.Parameters.Add("@img_cat",SqlDbType.NVarChar,8000).Value = dst.Tables[0].Rows[0][0].ToString(); 
     DataSet img_dst = new DataSet();     
     try 
     { 
      img_adbtr.Fill(img_dst); 
      slider_repeater.DataSource = img_dst; 
      slider_repeater.DataBind(); 
     } 
     catch (Exception ex) 
     { 
      Response.Write(ex.Message); 
     }     
    }    
} 

protected void cat_repeater_ItemCommand(object source, RepeaterCommandEventArgs e) 
{ 
    using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString)) 
    { 
     SqlCommand cmd = new SqlCommand(); 
     cmd.Connection = con; 
     cmd.CommandText = "select * from dbo.Select_gallery_cat_FN(@img_cat)"; 
     cmd.Parameters.Add("@img_cat", SqlDbType.NVarChar,8000).Value = ((LinkButton)e.CommandSource).Text; 
     con.Open(); 
     slider_repeater.DataSource = cmd.ExecuteReader(); 
     slider_repeater.DataBind(); 
    } 
} 

回答

0

你可以做這樣的事情。

<script> 
    $(document).ready(function() { 
     $('#cat_repeaterId').find('tr:first').click(); 
    }); 
</script> 

可能必須根據您是否想要單擊第一行中的按鈕來解決javascript問題。