在(bootstrap)中显示模态窗口并传递值参数

时间:2013-10-23 12:43:58

标签: jquery asp.net-mvc twitter-bootstrap

我有按钮

<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();
    }

我需要在模态窗口中显示此方法返回的字符串 有人能解释我怎么做吗?

1 个答案:

答案 0 :(得分:0)

这与您正在做的不同,但它可以帮助您解决问题。 您可以为href标记的anchor属性分配一个网址,引导程序会加载并将结果注入body的{​​{1}}

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>

<强> ParitalView

  [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");

        }