首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AJAX负载分散MVC 4部分视图

问AJAX负载分散MVC 4部分视图
EN

Stack Overflow用户
提问于 2014-09-13 19:06:00
回答 1查看 142关注 0票数 0

我使用脚手架选项创建了一个部分视图(MVC4),用于创建操作,我只是尝试将其加载到jquery对话框中,我能够在加载时加载部分view.but,我丢失了MVC 4为我生成的所有验证。

能否将部分视图(脚手架)加载到jquery对话框中?

这是我用来弹出的代码

代码语言:javascript
复制
$(function () {
    $("#CreateDialog").dialog({
        autoOpen: false,
        buttons: {
            "Create": function () {
                $(this).dialog("close");
            }
        },
        dialogClass: "no-title",
        hide: {
            effect: "scale",
            easing: "easeInBack"
        },
        show: {
            effect: "scale",
            easing: "easeOutBack"
        }
    });
});

function openModalPopUp() {

$.ajax({
    type: 'GET',
    url: '/Expense/CreatePartial',
    cache: false,
    success: function (result) {
        $('#CreateDialog').html(result);
    }
});

$("#CreateDialog").dialog("open");

}

我的模型(样本):

代码语言:javascript
复制
@model EFMvcWebRole.Models.ExpenseEntity

@using (Html.BeginForm()) {
    @Html.AntiForgeryToken()
    @Html.ValidationSummary(true)

    <fieldset>
        <legend>ExpenseEntity</legend>

        <div class="editor-label">
            @Html.LabelFor(model => model.ECValue)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.ECValue)
            @Html.ValidationMessageFor(model => model.ECValue)
        </div>

        <div class="editor-label">
            @Html.LabelFor(model => model.Category)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Category)
            @Html.ValidationMessageFor(model => model.Category)
        </div>

        <div class="editor-label">
            @Html.LabelFor(model => model.TotalSalary)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.TotalSalary)
            @Html.ValidationMessageFor(model => model.TotalSalary)
        </div>

        <div class="editor-label">
            @Html.LabelFor(model => model.Remaining)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Remaining)
            @Html.ValidationMessageFor(model => model.Remaining)
        </div>

    </fieldset>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-14 02:38:42

只需在部分视图中包含JS文件--即Jquery Unobtrusive js文件--也就可以很好地工作,有时这个问题出现在asp.net mvc中的部分视图中(因为表单是动态添加到DOM中的)。

只需将这个js文件包含在您的部分视图中就可以了:

代码语言:javascript
复制
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>

代码语言:javascript
复制
$.validator.unobtrusive.parse($("form"));
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25826657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档