JQuery模式没有显示

时间:2015-10-06 03:45:58

标签: javascript jquery asp.net-mvc

我需要你的帮助来帮助我的jquery模式显示我的控制器返回的动作结果。

在我的脚本中,这是代码:

<script type="text/javascript">
$(document).ready(function () {
    $("#dialog-detail").dialog({
        title: 'View Details',
        autoOpen: false,
        resizable: false,
        width: 400,
        show: { effect: 'drop', direction: "up" },
        modal: true,
        draggable: true,
        open: function (event, ui) {
            $(".ui-dialog-titlebar-close").hide();
            $(this).load(url);
        },
        buttons: {
            "Close": function () {
                $(this).dialog("close");
            }
        }
    })


    $(".lnkDetail").live("click", function (e) {
        // e.preventDefault(); use this or return false
        url = $(this).attr('href');
        $("#dialog-detail").dialog('open');

        return false;
    });
});

在视图部分:

    @foreach(var rfp in Model){
    <tr>
        <td>

                @Html.ActionLink("Details", "Details", new { rf_id = rfp.rf_id }, new { @class = "lnkDetail" })
                <div id="dialog-detail" style="display: none"></div>
         </td>
    </tr>
    }

在我的控制器中,这是使用模态内的id返回视图的代码。

    public ActionResult Details(int rf_id = 0)
    {
        var check = db.rms_approval_route_vw.Where(s => s.rf_id == rf_id).FirstOrDefault();

        if (check != null)
        {
            return PartialView(check);
        }
        else {
            ViewBag.message = "Waiting for regularization.";
        }

        return PartialView();
    }

我已经在我的布局中加载了jquery ui库。当我尝试运行代码时,它没有显示模态。

知道为什么会这样吗? 我真的需要你的帮助。

非常感谢你。

1 个答案:

答案 0 :(得分:1)

查看

@foreach(var rfp in Model){
        <tr>
            <td>

                  <a onclick="ShowPopup(@rfp.rf_id)">Details</a>

             </td>
        </tr>
        }
    <div id="dialog-detail" style="display: none"></div>

<强>脚本

<script type="text/javascript">
$(document).ready(function () {
    $("#dialog-detail").dialog({
        title: 'View Details',
        autoOpen: false,
        resizable: false,
        width: 400,            
        modal: true,
        draggable: true,
        open: function (event, ui) {              
        },
        buttons: {
            "Close": function () {
                $(this).dialog("close");
            }
        }
    })


});
 function ShowPopUp(id) {
   $('#dialog-detail').load('Details/?rf_id='+id, function () {
    $.validator.unobtrusive.parse($("#dialog-detail"));
    $('#dialog-detail').dialog('open');
    $('#dialog-detail').dialog('option', 'title', 'View Details');
});}
</script>

<强>动作

 public ActionResult Details(int rf_id = 0)
    {
        var check = db.rms_approval_route_vw.Where(s => s.rf_id == rf_id).FirstOrDefault();

        if (check != null)
        {
            return PartialView(check);
        }
        else {
            ViewBag.message = "Waiting for regularization.";
        }

        return PartialView();
    }