jquery - 在 MVC 中使用 jQuery 在 DisplayFor 和 EditorFor 之间切换

标签 jquery asp.net-mvc

必须有一种方法可以在我的 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/

相关文章:

javascript post 不执行功能但加载 url

javascript - 如何使用jquery以不区分大小写的方式获取URL参数

javascript - 使用 Chosen 插件更改选择中的选择

javascript - 基于 name 属性而不是 id 使用 jQuery 循环元素

html - ASP.NET MVC4 - 将包含字符串的 HTML 显示为原始 HTML

asp.net-mvc - 哪个字符串值需要 `CreateDefaultBuilder` 方法?

jquery - MVC4 中不引人注目的客户端验证不起作用

JQuery 重新加载按钮并更改值

asp.net-mvc - 如何在 MVC 3 中取消转义 URL

JQuery - 使用 JSON 的属性创建输入