繁体   English   中英

在第一个转发器项目上触发Click事件

[英]Trigger Click event on the first repeater item

我正在制作画廊网站。 并绘制数据库中可用的摄影会话。

但是,当用户第一次打开页面时,没有选择摄影会话。 因此页面将为空。 我想为用户自动选择第一个会话。 我通过选择数据库中的第一条记录来做到这一点。 但是我真的希望我是否可以在Page_load内编写一个代码,该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();
    }
}

你可以做这样的事情。

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

可能必须弄乱JavaScript,具体取决于您是否要单击第一行中的按钮。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM