Javascript 如何在MVC中从复杂的下拉列表中返回所选值?
我的dropdownlist工作起来就像一个树视图。因为,我似乎不知道Html.DropDownListFor是否能做到这一点,所以我不得不用老式的方式来做。这是我的密码 视图: 控制器: 如何将所选值(LocationId)返回控制器?视图中的id=“locSelection”,作为控制器中的对象选择引入。谢谢:)Javascript 如何在MVC中从复杂的下拉列表中返回所选值?,javascript,c#,asp.net-mvc,drop-down-menu,Javascript,C#,Asp.net Mvc,Drop Down Menu,我的dropdownlist工作起来就像一个树视图。因为,我似乎不知道Html.DropDownListFor是否能做到这一点,所以我不得不用老式的方式来做。这是我的密码 视图: 控制器: 如何将所选值(LocationId)返回控制器?视图中的id=“locSelection”,作为控制器中的对象选择引入。谢谢:) 首先,它不是一种老式的方式,它是复制下拉列表的引导方式 其次,它不是一个下拉式元素 因为它只包含ul和li标记,并且这些标记不是输入类型,所以您无法回发值 代码中的另一个问题
- 首先,它不是一种老式的方式,它是复制下拉列表的引导方式
- 其次,它不是一个下拉式元素
ul
和li
标记,并且这些标记不是输入类型,所以您无法回发值
代码中的另一个问题是,您在多个元素上设置IDlocSelection
,而这也在循环中。。因此,您将拥有大量具有相同ID的元素,这是一个很大的否。Id必须是唯一的,否则当我们开始在这些元素上使用Jquery时,这将是一场噩梦
解决方案--使用Jquery
- 删除Id的
- 向所有锚定标记添加一个类,例如:
locSelection
- 在表单中维护一个隐藏的输入字段。我们将使用这个隐藏的输入字段在表单提交时发回数据
- 现在,将单击事件绑定到
中的锚定标记,并在该事件中将单击的锚定标记文本值放入隐藏的输入中li
$('.locSelection')。在('click',function()上{
$('#locSelection').val($(this.text());
});代码>虽然我编辑以使图像可见,但请编辑以直接包含代码(不在图像中)。我有视觉问题。这样我就可以读代码了,你能把它粘贴成文本吗?谢谢你,雷迪。这帮了大忙。我是一个winforms的家伙,正在经历未来的MVC。这完全不同。@John很高兴我帮了忙:)