Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何查询局部视图并在模式中渲染它?_C#_Asp.net_Ajax_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

C# 如何查询局部视图并在模式中渲染它?

C# 如何查询局部视图并在模式中渲染它?,c#,asp.net,ajax,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Ajax,Asp.net Mvc,Asp.net Mvc 4,我在强类型控制器中有一个局部视图。是否可以在鼠标单击时部分呈现该视图的潜在内容 例子: 活动视图 <ul> <li><a href="#fireModal" class="open-popup-link">1</a></li> <li><a href="#fireModal" class="open-popup-link">2</a></li> <li>

我在强类型控制器中有一个局部视图。是否可以在鼠标单击时部分呈现该视图的潜在内容

例子: 活动视图

<ul>
    <li><a href="#fireModal" class="open-popup-link">1</a></li>
    <li><a href="#fireModal" class="open-popup-link">2</a></li>
    <li><a href="#fireModal" class="open-popup-link">3</a></li>
    <li><a href="#fireModal" class="open-popup-link">4</a></li>
</ul>
<div id="modalView"></div>
<script>
    $(document).ready(function () {
        $('.open-popup-link').magnificPopup({
          key: 'my-popup',
          type: 'inline',
          inline: {
            // Define markup. Class names should match key names.
            markup: '<div class="white-popup"><div class="mfp-close"></div>awesome</div>'
          }
        },
        {
            callbacks: {
                open: function(){

                }
            }
        });

        $('.open-popup-link').on('mfpOpen', function(e /*, params */) {
        var linkText = // how to I grab this? (e.g. 1, 2, 3, or 4)
        $.ajax({
            // call view partial withlinktext as parameter
            //on success
            //  var inlineContent = viewPartialContent
            // On error
            //  var inlineCOntent = 'Uh oh, something went wrong'
        });
        });
    });
</script>

这有意义吗?我能让它工作吗?你需要做两件事:

  • 更改
    Confirm
    方法,使其返回
    PartialView(reservation)
    而不是
    View(reservation)

  • 您需要使用AJAX,例如jQueryAjax来获取HTML,并在页面中呈现它

    $.ajax({url='确认操作的url',
    type='GET',
    dataType='html',
    data=params}).done(函数(html){
    //使用jQuery和html将其注入页面中需要的任何位置
    });

  • 注意:params是一个jQuery对象,它包含您需要像本例中的spaceNumber一样传递的数据,即

    var params = { spaceNumber: 'spaceNumberValue' }
    

    您的代码看起来太复杂,无法实现您想要实现的目标。您想在哪里渲染局部视图(顺便说一下,这就是它的名称)?
    public ActionResult Confirm(int spaceNumber)
    {
        var reservation = new Reservation { SpaceNumber=spaceNumber, UserName=AppSettings.CurrentUserName, Game=db.Games.FirstOrDefault(g => g.ID == AppSettings.CurrentGameID) };
        return View(reservation);
    }
    
    var params = { spaceNumber: 'spaceNumberValue' }