//这是按钮的事件代码
protected void SetIniValue(object source, EventArgs e)
{
//这是上一层的repeater的item
RepeaterItem repeaterItemCurrent = (RepeaterItem)(Session["repeaterItemCurrent"]);
Repeater rptResultList1 = null;
//这是这一层的repeater
rptResultList1 = (Repeater)repeaterItemCurrent.FindControl("rptResultList1");
foreach (RepeaterItem rti in rptResultList1.Items)
{
DropDownList myddl_ddlHEYA_JYOTAI = (DropDownList)rti.FindControl("ddlHEYA_JYOTAI");
HtmlInputHidden myhddn = new HtmlInputHidden();
myhddn = (HtmlInputHidden)rti.FindControl("hdnHEYA_JYOTAI_O");
//改变他的选择项,调试时SelectedIndex 已经变化了.但页面上不变
myddl_ddlHEYA_JYOTAI.SelectedIndex = myddl_ddlHEYA_JYOTAI.Items.IndexOf(myddl_ddlHEYA_JYOTAI.Items.FindByValue(myhddn.Value));
}
}
28 个解决方案
#1
在页面回传时,是否重新初始化了,看看页面的onload事件,有没有处理IsPostback
#2
Repeater要重新绑定才能显示
或者在Repeater的DataBound事件里写
或者在Repeater的DataBound事件里写
#3
IsPostback 中没有重新绑定数据.如果我的dropdownlist选择的是第二项,即使我在SetIniValue这个事件中,把dropdownlist的item.clear(),在调试时会显示selectedinex = -1,可页面上显示的选择,还是第二项,怎么回事呀!!!!!!!!!!!!!!!
#4
把AutoPostBack设成false
#5
难道,Repeater中的dropdownlist必须要Repeater重新绑定数据后,才能设置dropdownlist的selectedinex 值吗
#6
把AutoPostBack设成false,也不好用,也没反应
#7
DropDownList1.Items["aa"].Selected = true;
这样试一下
这样试一下
#8
你是说在页面上有个Button,是不是又刷回去了
#9
你是说在页面上有个Button,是不是又刷回去了
========================================
没有,很确信!
========================================
没有,很确信!
#10
帮忙,感激不尽!
#11
我不知道你到底做了个什么东西,是不是有一下拉列表,还有一按钮。点击按钮,下拉列表的值就变?
#12
我不知道你到底做了个什么东西,是不是有一下拉列表,还有一按钮。点击按钮,下拉列表的值就变?
============================
是的,就是这样的,下拉表中的列表时,是初始化时绑定的,按钮的功能就是改变下拉列表中的值.
============================
是的,就是这样的,下拉表中的列表时,是初始化时绑定的,按钮的功能就是改变下拉列表中的值.
#13
是的,就是这样的,下拉表中的列表时,是初始化时绑定的,按钮的功能就是改变下拉列表中的值.
--
那每次改变的值都是顺移到下一位吗?
--
那每次改变的值都是顺移到下一位吗?
#14
如果每次都是顺移的话,你直接删除上一位的值,然后重新绑定不就是了?
#15
那每次改变的值都是顺移到下一位吗?
=============================================================
不是,比如列表中的值(1001,1002,1003,1004),按钮的作用是设置它的值等于1003
=============================================================
不是,比如列表中的值(1001,1002,1003,1004),按钮的作用是设置它的值等于1003
#16
。。
那你就用JS移除所有项,只保留1003
那你就用JS移除所有项,只保留1003
#17
我在本地测试时候好使。
问题可能出在page_load里面。你是否每次刷新页面都调用了绑定dropdownlist的方法了????
问题可能出在page_load里面。你是否每次刷新页面都调用了绑定dropdownlist的方法了????
#18
还有就是IsPostBack
#19
问题可能出在page_load里面。你是否每次刷新页面都调用了绑定dropdownlist的方法了????
===================================================================
没有,我跟踪了,没有重新绑定!
我现在就不明白了,为什么会是这样呢,重新设置值后,为什么页面就没有反应呢,而后台跟踪时会显示值已经设置上了呀.晕!!!!!!!!!!!!!!倒
===================================================================
没有,我跟踪了,没有重新绑定!
我现在就不明白了,为什么会是这样呢,重新设置值后,为什么页面就没有反应呢,而后台跟踪时会显示值已经设置上了呀.晕!!!!!!!!!!!!!!倒
#20
用JS控制,把你设置的值的下标改成0
#21
用JS控制,把你设置的值的下标改成0
===============================================================
看来只能如此了,不过我就不明白,为什么会是那样呢!
===============================================================
看来只能如此了,不过我就不明白,为什么会是那样呢!
#22
呵呵,快做咯
#23
DropDownList1.Items["1003"].Selected = true;
#24
DropDownList1.Items["1003"].Selected = true;
这样做就行了
这样做就行了
#25
你用的是不是.net2005如果是就这样做
DropDownList1.Items["1003"].Selected = true;
DropDownList1.Items["1003"].Selected = true;
#26
LZ不就是这么做的么?
#27
在.net2005里设置 DropDownList的SelectedIndex 是不行的
这样试一下没有问题的
DropDownList1.Items["1003"].Selected = true;
这样试一下没有问题的
DropDownList1.Items["1003"].Selected = true;
#28
谢谢各位了,问题解决了,是因为RepeaterItem repeaterItemCurrent = (RepeaterItem)(Session["repeaterItemCurrent"]);这句话,每次修改后,repeaterItemCurrent已经变了,就不是(RepeaterItem)(Session["repeaterItemCurrent"])这个RepeaterItem了.所以按钮所设置的是原来的RepeaterItem,而不是新的RepeaterItem.
#1
在页面回传时,是否重新初始化了,看看页面的onload事件,有没有处理IsPostback
#2
Repeater要重新绑定才能显示
或者在Repeater的DataBound事件里写
或者在Repeater的DataBound事件里写
#3
IsPostback 中没有重新绑定数据.如果我的dropdownlist选择的是第二项,即使我在SetIniValue这个事件中,把dropdownlist的item.clear(),在调试时会显示selectedinex = -1,可页面上显示的选择,还是第二项,怎么回事呀!!!!!!!!!!!!!!!
#4
把AutoPostBack设成false
#5
难道,Repeater中的dropdownlist必须要Repeater重新绑定数据后,才能设置dropdownlist的selectedinex 值吗
#6
把AutoPostBack设成false,也不好用,也没反应
#7
DropDownList1.Items["aa"].Selected = true;
这样试一下
这样试一下
#8
你是说在页面上有个Button,是不是又刷回去了
#9
你是说在页面上有个Button,是不是又刷回去了
========================================
没有,很确信!
========================================
没有,很确信!
#10
帮忙,感激不尽!
#11
我不知道你到底做了个什么东西,是不是有一下拉列表,还有一按钮。点击按钮,下拉列表的值就变?
#12
我不知道你到底做了个什么东西,是不是有一下拉列表,还有一按钮。点击按钮,下拉列表的值就变?
============================
是的,就是这样的,下拉表中的列表时,是初始化时绑定的,按钮的功能就是改变下拉列表中的值.
============================
是的,就是这样的,下拉表中的列表时,是初始化时绑定的,按钮的功能就是改变下拉列表中的值.
#13
是的,就是这样的,下拉表中的列表时,是初始化时绑定的,按钮的功能就是改变下拉列表中的值.
--
那每次改变的值都是顺移到下一位吗?
--
那每次改变的值都是顺移到下一位吗?
#14
如果每次都是顺移的话,你直接删除上一位的值,然后重新绑定不就是了?
#15
那每次改变的值都是顺移到下一位吗?
=============================================================
不是,比如列表中的值(1001,1002,1003,1004),按钮的作用是设置它的值等于1003
=============================================================
不是,比如列表中的值(1001,1002,1003,1004),按钮的作用是设置它的值等于1003
#16
。。
那你就用JS移除所有项,只保留1003
那你就用JS移除所有项,只保留1003
#17
我在本地测试时候好使。
问题可能出在page_load里面。你是否每次刷新页面都调用了绑定dropdownlist的方法了????
问题可能出在page_load里面。你是否每次刷新页面都调用了绑定dropdownlist的方法了????
#18
还有就是IsPostBack
#19
问题可能出在page_load里面。你是否每次刷新页面都调用了绑定dropdownlist的方法了????
===================================================================
没有,我跟踪了,没有重新绑定!
我现在就不明白了,为什么会是这样呢,重新设置值后,为什么页面就没有反应呢,而后台跟踪时会显示值已经设置上了呀.晕!!!!!!!!!!!!!!倒
===================================================================
没有,我跟踪了,没有重新绑定!
我现在就不明白了,为什么会是这样呢,重新设置值后,为什么页面就没有反应呢,而后台跟踪时会显示值已经设置上了呀.晕!!!!!!!!!!!!!!倒
#20
用JS控制,把你设置的值的下标改成0
#21
用JS控制,把你设置的值的下标改成0
===============================================================
看来只能如此了,不过我就不明白,为什么会是那样呢!
===============================================================
看来只能如此了,不过我就不明白,为什么会是那样呢!
#22
呵呵,快做咯
#23
DropDownList1.Items["1003"].Selected = true;
#24
DropDownList1.Items["1003"].Selected = true;
这样做就行了
这样做就行了
#25
你用的是不是.net2005如果是就这样做
DropDownList1.Items["1003"].Selected = true;
DropDownList1.Items["1003"].Selected = true;
#26
LZ不就是这么做的么?
#27
在.net2005里设置 DropDownList的SelectedIndex 是不行的
这样试一下没有问题的
DropDownList1.Items["1003"].Selected = true;
这样试一下没有问题的
DropDownList1.Items["1003"].Selected = true;
#28
谢谢各位了,问题解决了,是因为RepeaterItem repeaterItemCurrent = (RepeaterItem)(Session["repeaterItemCurrent"]);这句话,每次修改后,repeaterItemCurrent已经变了,就不是(RepeaterItem)(Session["repeaterItemCurrent"])这个RepeaterItem了.所以按钮所设置的是原来的RepeaterItem,而不是新的RepeaterItem.