必须有一种方法可以在我的 View 上的 DisplayFor 和 EditorFor div 之间切换。我想单击“显示”字段旁边的“编辑”按钮,并隐藏 DisplayFor 元素并显示 EditorFor 字段。完成文本更新后,我想在编辑器字段中提交表单和数据。
我不确定为什么这不起作用,提示?
我的 jQuery
<script type="text/javascript">
function myFunction(element) {
$(element).find("span.item-display").html($(element).find("span.item-field").find(":input:first").val());
$(element).find("span.item-display")
.show()
.next("span.item-field")
.hide();
}
我的 HTML View
<dt><strong>@Html.LabelFor(m => m.FirstName) </strong></dt>
<dd>
<span class="item-display">
@Html.DisplayFor(m => m.FirstName)
</span>
<span class="item-field" style="display:none">
@Html.EditorFor(m => m.FirstName)
</span>
<span>
<button type="button" onclick="myFunction(this)" />
</span>
</dd>
最佳答案
使用 Jquery 切换,如下所示:
<dt><strong>@Html.LabelFor(m => m.FirstName) </strong></dt>
<dd>
<span class="item-display toggle-control">
@Html.DisplayFor(m => m.FirstName)
</span>
<span class="item-field toggle-control" style="display:none">
@Html.EditorFor(m => m.FirstName)
</span>
<span>
<button type="button" onclick="toggler()" />
</span>
</dd>
</dt>
<script>
function toggler()
{
$(".toggle-control").toggle();
}
</script>
关于jquery - 在 MVC 中使用 jQuery 在 DisplayFor 和 EditorFor 之间切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24949521/