根据MVC列表框和复选框的值更改标记元素
Change markup elements based on value of MVC Listbox and Checkbox
假设我的MVC视图中有以下标记:
<div class="row">
<div class="col-xs-6">
<label>UI Element:</label>
@Html.DropDownListFor(m => m.SelectedUIItem, Model.UIItems)
</div>
<div class="col-xs-6">
@Html.LabelFor(m => m.UseWholeMarkup)
@Html.CheckBoxFor(m =>m.UseWholeMarkup)
</div>
</div>
我想取下拉框和复选框的值,并在不回发的情况下动态更改这些元素下面的显示内容。我需要使用JQuery/JavaScript吗?怎样
视图模型为:
// DropDownList
public string SelectedUIItem { get; set; }
public IEnumerable<SelectListItem> UIItems { get; set; }
// Checkbox
[DisplayName("Use Whole Markup ")]
public bool UseWholeMarkup { get; set; }
下拉列表中填充了:
List<SelectListItem> listUIItems = new List<SelectListItem>();
// DropDownList
SelectListItem selList2 = new SelectListItem
{
Text = "HEADER",
Value = "HEADER",
Selected = false
};
listUIItems.Add(selList2);
selList2 = new SelectListItem
{
Text = "BODY",
Value = "BODY",
Selected = false
};
listUIItems.Add(selList2);
// DropDownList
selList2 = new SelectListItem
{
Text = "FOOTER",
Value = "FOOTER",
Selected = false
};
listUIItems.Add(selList2);
UIItemsViewModel viewModel = new UIItemsViewModel
{
UIItems = listUIItems
};
我认为"不回发"是指不重新加载页面。很好地使用AJAX可能需要POST,但它不会导致页面重新加载。无论如何,是的,如果你想在不重新加载整个页面的情况下更改页面的一部分,你必须使用JavaScript。如果您想通过从服务器检索到的内容来更改该部分,那么特别地,您必须使用AJAX。
相关文章:
- 如何附加<ul><李>元素位于某个特定条件的父元素列表之间
- 在元素列表中搜索给定字符串
- 生成ACF标记位置的数组(元素列表后缺少])
- 如何删除元素列表中的类并添加到另一个元素 Jquery.
- 什么'这是ES6中制作重复元素列表的等效方法
- jQuery单击并显示元素列表
- 如何在元素列表上使用jquery选择器
- 如何使用 Cycle.js 创建动态、重复的元素列表
- dc.js:如何在对象元素列表上减少计数
- 语法错误:使用 setInterval 时元素列表后缺少 ]
- 错误:火狐在元素列表后给我“缺少]”
- 使用字符串元素列表作为 Select2 组件的源
- 使用 jQuery 从元素列表创建特定属性的数组
- document.createElement();是否有我可以创建的元素列表
- 断言元素列表遵循带有 JavaScript 承诺的规则
- 在 jquery 中动态创建元素列表的最佳实践
- 如何使用 .nextUntil 将两个不同的类添加到
元素列表中
- 如何将一个元素列表移动到另一个性能最佳的元素中
- Javascript - 缺少 ] 在元素列表之后
- jquery中的li元素列表