document.getelementbytagname是否适用于mvc列表框
does document.getelementbytagname work for mvc listboxfor
你好,我有一个循环,它在局部视图中渲染元素。元素是用于的列表框,用于渲染的列表框的数量根据局部视图本身中不可访问的条件而变化。我想做的是找到通过使用javascript函数渲染的列表框的数量,可能还有第一个列表框,然后我可以循环浏览它们。另一种方法是指定一个类名,然后计数,但我做不到。请帮忙。
function dosomething() {
var x = document.getElementsByTagName("listbox");//This line always returns O
alert(x.length);
}
@Html.ListBoxFor(model => model.ServiceTypes, new MultiSelectList(RunLog.Domain.Lists.GlobalList.PartsServiceTypes(), "ID", "Name"), new { style = "width: 200px; height: 80px;", id = "lstbox", name="listbox", onclick = "dosomething()" })
HTML中没有listbox
这样的东西。它根本不存在。在HTML术语中(这就是您使用hjavascript操作的内容),元素被称为select
,具有允许多选的multiple="multiple"
属性。
因此:
var x = document.getElementsByTagName("select");
// now when looping over this x variable make sure
// you check for the presence of the multiple="multiple"
// attribute which is the only thing which distinguishes
// what you call a ListBox from a DropDown.
for (var i = 0; i < x.length; i++) {
var element = x[i];
// I am not even sure if this is a good test for the presence
// of the multiple attribute. Maybe it should work but can't guarantee
// cross browser correctness
if (element.multiple) {
// we've got a list box here
}
}
如果您决定使用jQuery:
var listBoxes = $('select[multiple]');
相关文章:
- 无法在mvc视图中使用ajax调用获取操作返回的模型对象列表
- 将列表<字符串>转换为客户端 ASP.NET MVC 上的 Json 数组
- 使用peta poco ORM在MVC应用程序中创建选择列表
- MVC 下拉列表更改事件未正确调用控制器中的操作
- 如何传递id列表's在MVC中向服务器发出AJAX请求
- 根据MVC列表框和复选框的值更改标记元素
- document.getelementbytagname是否适用于mvc列表框
- MVC中选择下拉列表的设置值出现问题
- 在不涉及控制器的情况下对MVC视图列表中的项进行排序
- ASP.NET MVC级联下拉列表列出Javascript问题
- MVC 4使用Razor禁用多个下拉列表中的值
- 在asp.net mvc中,从第二下拉列表中选择值后,第二下拉菜单不显示
- 通过javascript ASP.NET MVC下拉列表调用按钮
- 如何将带有数组列表的$(“form”).serialize()从AJAX方法传递到mvc控制器
- 在级联 MVC 3 中禁用下拉列表
- 春季MVC优化了选择后的下拉列表
- 如何在Spring MVC中实现无序列表的展开/折叠功能
- asp.net MVC 从多个下拉列表中获取值
- MVC 控制器从下拉列表中获取值
- 为什么我以前的按钮不包含控制器的参数?分页列表 MVC