asp.net 中ListBox选中值的问题??高手求解

 <asp:ListBoxID="ListBox1"runat="server"Height="368px"Width="189px"OnSelected...  <asp:ListBox ID="ListBox1" runat="server" Height="368px" Width="189px" OnSelectedIndexChanged="ListBox1_SelectedIndexChanged" AutoPostBack="True"></asp:ListBox> 选中事件始终触发不了,为什么??感觉是点一次刷新一次,要是 AutoPostBack="false"的话,又会没反应了,怎么弄都不行,紧急求解,谢谢大家!!! 展开
 我来答
若以下回答无法解决问题,邀请你更新回答
毓闻瑶4x
2011-11-05 · TA获得超过153个赞
知道小有建树答主
回答量:119
采纳率:0%
帮助的人:120万
展开全部
因为你做的是服务器事件,所以每次触发事件,就需要把动作发送到服务器,再从服务器上处理完后发送回来,客户端接收到数据,需要刷新界面才能显示。
你可以把ListBox的事件作成客户端事件,那样就不需要刷新界面了。
如:
<asp:ListBox ID="ListBox1" runat="server" Height="368px" Width="189px"
onchange="getData()"></asp:ListBox>
在界面的JS中作成getData()函数,进行ListBox的处理。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-11-05
展开全部
因为你点一次,AutoPostBack就会向后台提交一次数据,后台就会运行一次ListBox1_SelectedIndexChanged,所以你感觉会点一次刷新一次。如果你不想出现这种情况的话,可以使用JS实现你要在ListBox1_SelectedIndexChanged中实现的效果。
例如:
<div>
<asp:ListBox ID="ListBox1" runat="server" onchange="SelectedIndexChanged();">
<asp:ListItem Text="1" Value="1" Selected="True"></asp:ListItem>
<asp:ListItem Text="2" Value="2" ></asp:ListItem>
<asp:ListItem Text="3" Value="3" ></asp:ListItem>
<asp:ListItem Text="4" Value="4" ></asp:ListItem>
<asp:ListItem Text="5" Value="5" ></asp:ListItem>
</asp:ListBox>
<asp:Label ID="lbl1" runat="server" Text="0"></asp:Label>
</div>
我要实现的是,当列表选中项改变时,将选中项的Value值在lbl1中显示出来,js方法“SelectedIndexChanged()”如下:
function SelectedIndexChanged()
{
var obj=document.getElementById("ListBox1");

var len=document.getElementById("ListBox1").options.length;
for(var i=0;i<len;i++)
{
if(obj.options[i].selected==true)
{
document.getElementById("lbl1").innerHTML=obj.options[i].value;
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式