asp.net Gridview检查选中的索引客户端

时间:2009-12-27 07:12:13

标签: gridview

我该如何做这个客户端, 如果gridview选择索引< btnYes,则onClientClick将返回false。 0;

protected void btnYes_Click(object sender, EventArgs e)
{
    if (gvCourseDetails.SelectedIndex == -1)
    {
        ClientScriptManager scriptManager = Page.ClientScript;
        scriptManager.RegisterClientScriptBlock(this.GetType(), "alertmessage",
                       "<script>alert('Select a course above first');</script>");
    }
}

感谢。

2 个答案:

答案 0 :(得分:1)

GridView选择的索引在没有回发的情况下不会改变,所以你只能在服务器端评估一次(在page_load或btnYes prerender等)。它在客户端几乎毫无意义。

if (gvCourseDetails.SelectedIndex == -1)
{
   btnYes.OnClientClick = "alert('Select a course above first'); return false;";
}
else
{
   btnYes.OnClientClick = "";
}

答案 1 :(得分:1)

我认为您可以声明一个公共变量并将SelectedIndex存储在其中,然后从客户端脚本调用它,但您需要回发该页面:

public int selectedIndex = 0;
protected void Page_Load(object sender, EventArgs e)
{
selectedIndex = gvCourseDetails.SelectedIndex;
}

//这里是客户端脚本

function CheckSelectedIndex()
{
   if(<%= selectedIndex%> == -1)
   {
       // type you code
   }
}