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();
    }
}
4

1 回答 1

0

你可以做这样的事情。

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

根据您是否要单击第一行内的按钮,可能不得不弄乱javascript。

于 2013-02-01T15:43:25.880 回答