如何在Asp.Net中不按CTRL键的情况下在ListBox中多选项目
How to multiple select item in ListBox without press CTRL in Asp.Net?
我想在ListBox
中选择多个项目,但浏览器要求用户按CTRL键选择多个项,否则只选择一个项目。
我想在不按CTRL键的情况下选择多个项目,并且我不想使用CheckBoxList
。有更好的方法吗?使用纯javascript、JQuery或Codebehin。
(我已经为ListBox
控件添加了SelectionMode="Multiple"
属性)
代码:
<asp:ListBox ID="ListBox1" runat="server" Height="210px" Width="203px" SelectionMode="Multiple">
<asp:ListItem>1000</asp:ListItem>
<asp:ListItem>2000</asp:ListItem>
<asp:ListItem>4000</asp:ListItem>
<asp:ListItem>4000</asp:ListItem>
<asp:ListItem>5000</asp:ListItem>
<asp:ListItem>6000</asp:ListItem>
</asp:ListBox>
Ref:使标准ASP.NET列表框在不按住Ctrl 的情况下进行多选
只需将您的列表框更改为
<asp:ListBox ID="ListBox1" runat="server" Height="210px" Width="203px" SelectionMode="Multiple" onclick="ListBoxClient_SelectionChanged(this, event);">
<asp:ListItem>1000</asp:ListItem>
<asp:ListItem>2000</asp:ListItem>
<asp:ListItem>4000</asp:ListItem>
<asp:ListItem>4000</asp:ListItem>
<asp:ListItem>5000</asp:ListItem>
<asp:ListItem>6000</asp:ListItem>
</asp:ListBox>
并在您的<script>
标签中添加以下脚本
<script type="text/javascript" language="javascript">
var selectedClientPermissions = [];
function pageLoad() {
var ListBox1 = document.getElementById("<%= ListBox1.ClientID %>");
for (var i = 0; i < ListBox1.length; i++) {
selectedClientPermissions[i] = ListBox1.options[i].selected;
}
}
function ListBoxClient_SelectionChanged(sender, args) {
var scrollPosition = sender.scrollTop;
for (var i = 0; i < sender.length; i++) {
if (sender.options[i].selected) selectedClientPermissions[i] = !selectedClientPermissions[i];
sender.options[i].selected = selectedClientPermissions[i] === true;
}
sender.scrollTop = scrollPosition;
}
</script>
如果您使用的是jquery,只需添加以下脚本:
$('option').mousedown(function(e) {
e.preventDefault();
$(this).prop('selected', !$(this).prop('selected'));
return false;
});
相关文章:
- 如何在未直接触发的情况下停止事件
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- 在不打开聊天屏幕的情况下制作Zopim-ding代理
- 在不阻止默认行为的情况下检测IE10中的缩放
- 如何在不传递此信息的情况下查找被调用的元素
- 如何在不刷新页面的情况下更新显示框
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- JavaScript-在手机上不工作的情况下,在外部单击时隐藏元素
- 在我的情况下,如何进行http请求
- 在不知道深度或父属性的情况下从对象中删除属性
- 在不破坏未定义函数的情况下,对多个视图使用单个js文件
- ROR:如何在不重新加载浏览器的情况下从控制器获取参数
- 如何在不影响其他元素的情况下扩展DIV
- 如何在内联依赖项并将图像转换为dataURI的情况下完全提取网页
- 在不移动内部文本的情况下缩放元素的效果
- 在不设置协议的情况下,使用javascript/jquery更改iframe-src
- 默认情况下折叠和展开嵌套列表
- 如何在不单击javascript中的按钮的情况下触发事件
- 如何在Asp.Net中不按CTRL键的情况下在ListBox中多选项目