比如DropDownList的autopostback属性。用户在用键盘选择不同的dropdownlist的数据项时,用键盘的上下键切换的时候,每切换一次都会触发autopostback.但是,实际情况是用户还没有正确选到自己的数据项,就出发了autopostback.浪费大量的时间。
有没有可能
方法1。设定一个滞后时间值,在这里值以内,不要触发autopostback。
方法2。是不是可以用户通过上下键选择好自己的项目后,通过回车键来触发postback.不知道哪位可以指点一二。
有没有可能
方法1。设定一个滞后时间值,在这里值以内,不要触发autopostback。
方法2。是不是可以用户通过上下键选择好自己的项目后,通过回车键来触发postback.不知道哪位可以指点一二。
而不是onBlur,这样的。也许我的这个思路的逻辑出发点就是错误的?
<form runat='server'>
<asp:DropDownList id=ddl runat='server' OnSelectedIndexChanged='Select_Change'>
<asp:ListItem Text='One' Value='1' />
<asp:ListItem Text='Two' Value='2' />
<asp:ListItem Text='Three' Value='3' />
</asp:DropDownList>
<asp:TextBox runat='server' /><asp:Button runat='server' OnClick="DoSubmit" />
</form>
<script language='C#' runat='server'>
void Page_Load(Object sender, EventArgs e)
{
ddl.Attributes["onkeyup"] = String.Format("javascript:if (event.keyCode == 13) {0};", GetPostBackEventReference(ddl));
}
void Select_Change(Object sender, EventArgs e)
{
Response.Write("in Select_Change:" + ddl.SelectedItem.Value);
}void DoSubmit(Object sender, EventArgs e)
{
Response.Write("in submit:" + ddl.SelectedItem.Value);
}</script>
thanks for all guys