C# asp:listbox,don';在单击外部之前,请不要自动回发

C# asp:listbox,don';在单击外部之前,请不要自动回发,c#,jquery,asp.net,listbox,autopostback,C#,Jquery,Asp.net,Listbox,Autopostback,这似乎是一种奇怪的请求,但我希望在用户单击列表框外部之前,而不是在用户选择/取消选择某个项目时,防止自动回发所选索引的更改 这可能吗?我问的原因是我有一个用于多选下拉列表 就像现在一样,每次用户选择一个项目时,autopostback都会关闭下拉列表,索引也会成功更改。但是,如果我关闭autopostback,它将保持打开状态,以允许用户选择多个项目,但它不会注册为选中项目 如果有人能提出这样做的方法,我将永远感激。非常感谢 我将为下面的multiselect发布我的asp.net和c#code

这似乎是一种奇怪的请求,但我希望在用户单击列表框外部之前,而不是在用户选择/取消选择某个项目时,防止自动回发所选索引的更改

这可能吗?我问的原因是我有一个用于多选下拉列表

就像现在一样,每次用户选择一个项目时,autopostback都会关闭下拉列表,索引也会成功更改。但是,如果我关闭autopostback,它将保持打开状态,以允许用户选择多个项目,但它不会注册为选中项目

如果有人能提出这样做的方法,我将永远感激。非常感谢

我将为下面的multiselect发布我的asp.net和c#codebehind

ASP.NET

<asp:UpdatePanel ID="UpdatePanel2" runat="server">
                            <ContentTemplate>
                                <asp:ListBox ID="DependenciesListBox" runat="server" SelectionMode="Multiple" Width="300px" CssClass="search-box-sel-all" multiple="multiple" placeholder="Select Child Dependencies" ToolTip="Items that depend on this currency item" AutoPostBack="True" OnSelectedIndexChanged="DependenciesListBox_SelectedIndexChanged"></asp:ListBox>
                            </ContentTemplate>
                        </asp:UpdatePanel>

//Java脚本代码
功能clientListChanged(el)
{
if(el.value=='1')//对于所有不想回发的索引,添加条件
{ 
返回false;
} 
返回true;//否则发回
}
当用户单击框外并进行回发时,使用
onblur
event作为事件。我不确定它是否允许使用列表框进行html标记;如果没有,请使用
属性通过代码隐藏添加。为列表框添加
。然后,您可能可以在asp引号中使用uuDoPostBack(elementName.ClientId)来发布到服务器

注意:我没有测试代码的错误或语法问题。我只是在编辑器里写的。因此,请修复您发现的任何错误。


//Java脚本代码
功能clientListChanged(el)
{
if(el.value=='1')//对于所有不想回发的索引,添加条件
{ 
返回false;
} 
返回true;//否则发回
}
当用户单击框外并进行回发时,使用
onblur
event作为事件。我不确定它是否允许使用列表框进行html标记;如果没有,请使用
属性通过代码隐藏添加。为列表框添加
。然后,您可能可以在asp引号中使用uuDoPostBack(elementName.ClientId)来发布到服务器


注意:我没有测试代码的错误或语法问题。我只是在编辑器里写的。所以,请修复您发现的任何错误。

我不知道完美的答案

但这对我有用,我希望对你有用

使用updatepanel触发器

<Triggers>
<asp:AsyncPostBackTrigger
ControlID="DependenciesListBox"
EventName="SelectedIndexChanged
="SelectedIndexChanged" />
</Triggers>


我不知道完美的答案

但这对我有用,我希望对你有用

使用updatepanel触发器

<Triggers>
<asp:AsyncPostBackTrigger
ControlID="DependenciesListBox"
EventName="SelectedIndexChanged
="SelectedIndexChanged" />
</Triggers>


为什么不使用javascript根据您所需的条件添加客户端事件和回发呢。如果不满意,返回false/cancel postback。我对javascript非常苛刻。我是第一次合作的学生,除了在客户机/服务器课程中短暂地学习过javascript/jquery之外,我还没有学过javascript/jquery。举个例子绝对是很棒的。好吧,添加了更多的内容作为答案,为什么不添加一个客户端事件并根据您需要的条件使用javascript进行回发呢。如果不满意,返回false/cancel postback。我对javascript非常苛刻。我是第一次合作的学生,除了在客户机/服务器课程中短暂地学习过javascript/jquery之外,我还没有学过javascript/jquery。一个例子绝对是很棒的。好吧,添加更多的内容作为答案
<Triggers>
<asp:AsyncPostBackTrigger
ControlID="DependenciesListBox"
EventName="SelectedIndexChanged
="SelectedIndexChanged" />
</Triggers>