我该如何做这个客户端, 如果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>");
}
}
感谢。
答案 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
}
}