现在我在updatepanel外有一个层,层里面有控件,我希望在层里面选择一个值返回到updatepanel内的listbox上,我现在的问题是我调试了下,值确实已经赋值了,但是因为updatepanel的缘故,listbox没有刷新,导致前台值还没有显示。
请教下,这个要如何处理
9 个解决方案
#1
<asp:UpdatePanel ID="upnl" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="listbox" EventName="Click" />
</Triggers>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="listbox" EventName="Click" />
</Triggers>
#2
我listbox没有click事件,我是通过层里面的比如gridview的双击事件返回值到listbox中的
#3
貼出代碼看看
#4
用js去赋值。
#5
function SelConditionPro() {
__doPostBack('btnSelCondition', '');
}
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="btnSelCondition" runat="server" Text="︾添加所有条件"
onclick="btnSelCondition_Click" />
<asp:ListBox ID="lstCondition" runat="server" Height="200px" Width="90%"></asp:ListBox>
</ContentTemplate>
</asp:UpdatePanel>
<div id="popConditionDiv" class="popCondDiv" style="display:none;">
<input type="button" value="确定" onclick="javascript:SelConditionPro();" style="width:80px" />
</div>
protected void btnSelCondition_Click(object sender, EventArgs e)
{
//string strConEnglish = ViewState["sEnglish"].ToString();
//string strConChinese = ViewState["sChinese"].ToString();
string[] sEnglish = strConEnglish.Split(new string[] { "<>" }, StringSplitOptions.None);
string[] sChinese = strConChinese.Split(new string[] { "####" }, StringSplitOptions.None);
ListItemCollection listcon = new ListItemCollection();
for (int i = 0; i < sChinese.Length; i++)
{
ListItem lst = new ListItem();
lst.Text = sChinese[i];
lst.Value = sEnglish[i];
lstCondition.Items.Add(lst);
}
}
#6
上面的是代码
#7
你貼的代碼沒問題啊
#8
对啊,所以才不知道问题在哪里啊,我现在就是想在updatepanel外将值返回到updatepanel内的控件上,
现在出现的是实际值已经附上了,但是因为updatepanel没有回发,所以值没能刷新显示到界面上
现在出现的是实际值已经附上了,但是因为updatepanel没有回发,所以值没能刷新显示到界面上
#9
那就把外面的控件也包到updatepanel中
#1
<asp:UpdatePanel ID="upnl" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="listbox" EventName="Click" />
</Triggers>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="listbox" EventName="Click" />
</Triggers>
#2
我listbox没有click事件,我是通过层里面的比如gridview的双击事件返回值到listbox中的
#3
貼出代碼看看
#4
用js去赋值。
#5
function SelConditionPro() {
__doPostBack('btnSelCondition', '');
}
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="btnSelCondition" runat="server" Text="︾添加所有条件"
onclick="btnSelCondition_Click" />
<asp:ListBox ID="lstCondition" runat="server" Height="200px" Width="90%"></asp:ListBox>
</ContentTemplate>
</asp:UpdatePanel>
<div id="popConditionDiv" class="popCondDiv" style="display:none;">
<input type="button" value="确定" onclick="javascript:SelConditionPro();" style="width:80px" />
</div>
protected void btnSelCondition_Click(object sender, EventArgs e)
{
//string strConEnglish = ViewState["sEnglish"].ToString();
//string strConChinese = ViewState["sChinese"].ToString();
string[] sEnglish = strConEnglish.Split(new string[] { "<>" }, StringSplitOptions.None);
string[] sChinese = strConChinese.Split(new string[] { "####" }, StringSplitOptions.None);
ListItemCollection listcon = new ListItemCollection();
for (int i = 0; i < sChinese.Length; i++)
{
ListItem lst = new ListItem();
lst.Text = sChinese[i];
lst.Value = sEnglish[i];
lstCondition.Items.Add(lst);
}
}
#6
上面的是代码
#7
你貼的代碼沒問題啊
#8
对啊,所以才不知道问题在哪里啊,我现在就是想在updatepanel外将值返回到updatepanel内的控件上,
现在出现的是实际值已经附上了,但是因为updatepanel没有回发,所以值没能刷新显示到界面上
现在出现的是实际值已经附上了,但是因为updatepanel没有回发,所以值没能刷新显示到界面上
#9
那就把外面的控件也包到updatepanel中