MVC Partialview无法在Firefox中显示

时间:2015-07-06 10:25:00

标签: asp.net-mvc google-chrome firefox view asp.net-mvc-partialview

在我的MVC应用程序中,我从partialview拨打view,我可以在Chrome中显示其内容。但是,使用Firefox时,不会显示partialview的内容。我发现,当使用一个元素,即纯文本,<h1><p>等,如下所示:

<p style="visibility:hidden;"></p>

然而,这个解决方案是微不足道的,我想要正确理解和解决问题。另一方面,firebug控制台上没有错误消息。有什么想法吗?

查看:

@model IssueManagement.WebUI.Models.IssueViewModel

@{
    ViewBag.Title = "New Ticket";
    Layout = "~/Views/Shared/_IndexLayout.cshtml";
}

<div class="container" style="width:934px; min-height:800px;">

    <!-- Page Header -->
    <div class="row">
        <div class="col-lg-12">
            <h3 class="page-header">
                New Ticket
            </h3>
        </div>
    </div>
    <!-- /.row -->

    <div class="panel panel-default">
        <div class="panel-body">
            @Html.Partial("_Create")
        </div>
    </div>
</div>



<script type="text/javascript">
/* <![CDATA[ */   /* Some text, like JavaScript code, contains a lot of "<" or "&" characters. To avoid errors script code can be defined as CDATA. */

$(function () {

    $("#btnCreate").prop("disabled", true).addClass("k-state-disabled");

});
/* ]]> */
</script>


PartialView:

@model IssueManagement.WebUI.Models.IssueViewModel


@{
    ViewBag.Title = "New Ticket";
}

<script>
function filterIssueTypes() {
    return {
        projects: $("#ProjectID").val()
    };
}

function filterTools() {
    return {
        issueTypes: $("#filterTools").val()
    };
}

$(document).ready(function () {
    var projects = $("#ProjectID").data("kendoDropDownList"),
        issueTypes = $("#IssueTypeID").data("kendoDropDownList"),
        tools = $("#ToolID").data("kendoDropDownList");
});
</script>


@using (Html.BeginForm("Create", "Issue", FormMethod.Post,
    new { id = "frmCreate", enctype = "multipart/form-data" })) 
{   
<div id="popupDiv" style="height: 548px; /* 421px; */ overflow-y: scroll; margin-top: -7px; margin-bottom:-14px ">

    @Html.AntiForgeryToken()
    @Html.ValidationSummary(true)

    @Html.LabelFor(m => m.ProjectID)
    @(Html.Kendo().DropDownList()
          .Name("ProjectID")
          .OptionLabel("Select...")
          .DataTextField("ProjectName")
          .DataValueField("ProjectId")
          .DataSource(source =>
          {
              source.Read(read =>
              {
                  read.Action("GetCascadeProjects", "Issue");
              });
          })
         .Template("<span class=\"k-state-default\"><img src=\"" + Url.Content("#:data.IconUrl#\" /></span>").ToString() +
               "<span style='padding-bottom:10px !important;' class=\"k-state-default\">#: data.ProjectName #</span>")
         .ValueTemplate("<img class=\"selected-value\" src=\"" + Url.Content("#:data.IconUrl#\" /><span>#:data.ProjectName#</span>").ToString())
    )
    @Html.ValidationMessageFor(m => m.ProjectID)
    <br />

    //... removed for brevity

    <!-- Place where you will insert your partial -->
    <div id="partialPlaceHolder" style="display:none; margin-bottom:50px;">           </div>

</div>


<div class="panel-footer clearfix">
    <div class="pull-right">

        @(Html.Kendo().Button()
                .Name("btnCancel")
                .HtmlAttributes(new { type = "button", @class = "k-button", onclick = "closeWindow('#winCreate')" })
                .Content("Cancel")
        )

        @(Html.Kendo().Button()
            .Name("btnSubmit")
            .HtmlAttributes(new { type = "submit", @class = "k-primary k-button" })
                .Content("Save")
        )

    </div>
</div>

}





<script type="text/javascript">
/* <![CDATA[ */   /* Some text, like JavaScript code, contains a lot of "<" or "&" characters. To avoid errors script code can be defined as CDATA. */

$(function () {

    $("form").kendoValidator({
        errorTemplate: '<span class="vld vld-danger"><span class="k-icon k-warning" title="${message}"></span></span>'
    });

    $("#btnSubmit").click(function () {
        if (!document.getElementById('frmCreate').checkValidity()) {
            $('html, body').animate({ scrollTop: (0) }, 1000);
            $('#popupDiv').animate({ scrollTop: (0) }, 1000);
            var errorMsg = "Attention pls!..";
            $('#divMessage').html(errorMsg).attr('class', 'alert alert-danger fade in');
            $('#divMessage').show();
        }           
    });


    $('form').submit(function (event) {
        event.preventDefault();
        showKendoLoading();
        var selectedProjectId = $('#ProjectID').val(); /* Get the selected value of dropdownlist */
        if (selectedProjectId != 0) {
            var formdata = new FormData($('#frmCreate').get(0));

            $.ajax({
                type: "POST",
                url: '@Url.Action("Create", "Issue")',
                data: formdata,
                dataType: "json",
                processData: false, //For posting uploaded files we add this
                contentType: false, //For posting uploaded files we add this
                success: function (response) {
                    if (response.success) {                         
                        window.location.href = response.url;
                    }
                    else if (!response.success) {
                        hideKendoLoading(); 
                        //Scroll top of the page and div over a period of one second (1,000 milliseconds = 1 second). 
                        $('html, body').animate({ scrollTop: (0) }, 1000);
                        $('#popupDiv').animate({ scrollTop: (0) }, 1000);
                        var errorMsg = response.message;
                        $('#divMessage').html(errorMsg).attr('class', 'alert alert-danger fade in');
                        $('#divMessage').show(); 
                    }
                    else {
                        var errorMsg = null;
                        $('#divMessage').html(errorMsg).attr('class', 'empty-alert');
                        $('#divMessage').hide(); 
                    }
                }
            });
        }
        else {
            $('#partialPlaceHolder').html(""); //Clear div
        }

    });
    /* ]]> */

});

</script>

0 个答案:

没有答案
相关问题