从客户端脚本的ASP列表框中删除项目

Remove item from ASP listbox in client side script

本文关键字:删除项目 列表 ASP 客户端 脚本      更新时间:2023-09-26

当用户单击一个按钮时,我使用以下JavaScript代码删除名为lbResources的列表框中的选定项:

var listResources = document.getElementById('lbResources');
listResources.options.remove(listResources.selectedIndex);

这将从列表框中删除项目,但在回发到服务器时,该项目仍然存在于后面的代码中。是否有任何方法来获得列表框对象背后的代码,以反映项目删除在客户端?现在我应该使用标准的HTML列表框而不是asp.net控件吗?

我可以简单地使用一个隐藏字段来保存我需要传递回发的数据,但如果可能的话,我希望避免这种情况。

. NET控件在每次回发或页面加载时保持以相同的方式呈现。不管你在客户那边做了什么。它只关心控件的值。它还根据viewstate验证自身。你根本不能那样做。

我建议使用隐藏字段来传递你想要删除和更新面板的项目,以防止页面完全加载。

或者您可以使用标准的HTML输入,但这取决于您是否需要知道服务器端所选值以外的值