0

我有按钮

<input type="button" value="Show URL" onclick="showUrlQuestionnaire(' + options.rowId + ')" data-toggle="modal">

单击时我需要显示模态窗口并从控制器调用方法
我在其中添加了此代码@section dialogs

@section dialogs{

<div id="show_url_dialog" class="modal hide fade">
    @Html.Partial("_ShowUrlDialog")
</div>

}

并将此代码添加到script section

function showUrlQuestionnaire(id) {
        $('#show_url_dialog').modal('show').val(id);
    };

创建局部视图

<div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
    <h4>Title</h4>
</div>
<div class="modal-body">
    test text
</div>

但我不知道如何传递给模型视图和局部视图id并在这个局部视图中调用来自控制器的方法?这是方法

[HttpGet]
    public string ShowUrlQuestionnaire(int id)
    {
        var questionnaire = QuestionnaireRepository.GetById(id);
        var questionnaireUrl = QuestionnaireService.GetQuestionnaireByGuid(Guid.Parse(questionnaire.QuestionnaireId.ToString()));
        return questionnaireUrl.ToString();
    }

我需要在模式窗口中显示从这个方法返回的字符串。
有人可以解释我该怎么做吗?

4

1 回答 1

0

这是一种与您正在做的不同的方法,但它会帮助您解决问题。您可以将 url 分配给引导程序将加载href的标签的属性,anchor并将结果注入body您的modal

<a data-toggle="modal" href="/Home/ShowUrlQuestionnaire/@options.rowId" data-target="#show_url_dialog">click me</a>

<div id="show_url_dialog" class="modal hide fade">

</div>

控制器

  [HttpGet]
        public ActionResult ShowUrlQuestionnaire(int id)
        {
            var questionnaire = QuestionnaireRepository.GetById(id);
            var questionnaireUrl = QuestionnaireService.GetQuestionnaireByGuid(Guid.Parse(questionnaire.QuestionnaireId.ToString()));
            ViewBag.QuestionnaireUrl = questionnaireUrl;
            return PartialView("_ShowUrlDialog");

        }

部分视图

<div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
    <h4>Title</h4>
</div>
<div class="modal-body">
    @ViewBag.QuestionnaireUrl
</div>
于 2013-10-23T13:03:02.373 回答