【问题标题】:Is it possible for me to make my controller return data for my modal window? MVC5 ASP.NET我可以让我的控制器为我的模式窗口返回数据吗? MVC5 ASP.NET
【发布时间】:2016-03-10 18:02:02
【问题描述】:

我正忙着制作我的 ASP.NET 网络应用程序。

我将首先解释我的申请流程。

  • 用户提交表单
  • 表单数据被发布到控制器
  • 控制器使用 tagbuilder 生成包含数字的表格,并将其作为 mvcHtmlString 返回。

此表中的每个数字都被一个锚标记 (a) 包围。 单击此数字时,我想打开一个模式窗口,该窗口显示与单击的数字相关的数据。 点击这个数字当前有一个 url.action 作为 href 所以它会跳转到我的控制器,将数字传递给控制器​​。

显示模式不是问题,因为我可以将数据切换和数据目标传递到我的锚标记中,但我想显示控制器在其主体中返回的数据。

我目前正在做的是在我看来包含我所做的表单

@{Html.RenderPartial("_Details");}

_Details 包含整个模态代码:

<div class="modal fade" id="competenceModal" tabindex="-1" role="dialog" aria-labelledby="competenceModal" aria-hidden="true">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-body">
            <p>Competence details</p>
        </div>

        <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        </div>
    </div>
</div>

我的锚标记被返回到包含表单的视图:

UrlHelper url = new UrlHelper(HttpContext.Request.RequestContext);
var url2 = url.Action("LevelDetails", "Knowledge", new { level = level.Value });

var anchor = new TagBuilder("a");
anchor.Attributes.Add("href", url2);
anchor.Attributes.Add("data-target", "#competenceModal");
anchor.Attributes.Add("data-toggle", "modal");

这是正确访问我的控制器,但我的大问题是:

是否可以让控制器返回数据,例如mvcHtmlString 或任何其他内容,并将其放在我的模态窗口的正文中?如果是这样,最好的方法是什么?

【问题讨论】:

  • 我会调查 return PartialViewResult("_Details"); 这可能会有所帮助
  • 我确实做到了,它返回了模态页眉页脚和关闭按钮,但是是原始格式。它给了我一个带有纯文本和一个按钮的空白页面。它的行为与普通模式窗口不同。
  • @Mick 你是怎么调用你的方法的?使用 AJAX?
  • 不,使用我在上一个代码片段中创建的 Url.Action。
  • 我会尝试使用 ajax 请求从控制器获取 html 数据,然后将 html 放在我认为合适的模式中。

标签: javascript c# jquery asp.net asp.net-mvc-5


【解决方案1】:

我想建议您遵循以下内容,
1. 在控制器中构建模态链接时使用 data-id 字段。喜欢 data-id="1"
2. 在您的局部视图中,使用此 id 调用 ajax 方法,如“getData”
3. 从“getData”中返回 json 格式的数据。
4. 现在使用 jquery 将返回的数据绑定到表单控件。

希望对您有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-13
    相关资源
    最近更新 更多