【问题标题】:@Html.RenderAction with Ajax Form ASP.NET Mvc3 c#@Html.RenderAction 与 Ajax 表单 ASP.NET Mvc3 c#
【发布时间】:2012-01-29 22:56:36
【问题描述】:

我有一个场景,当控件呈现时我需要一些代码设置。我有一个小部件,可以在多个页面上使用,称为 QuickRate:

我试图在我的 cshtml 文件中这样称呼它:

<div class="dragbox" id="quick-rate">
<h2>Retrieve a Quick Rate</h2>
@Html.Action("Create", "QuickRate")
</div>

然后在我的 QuickRateController.cs 上创建:

public ActionResult Create()
{
var model = new QuickRateModel();
    model.Products = currentUser.GetProducts(dataRepository).ToSelectList(p => p.ProductId, p => p.ProductName);
return View("QuickRateResult", model);
}

然后我有一个 QuickRatePartial.cshtml 文件,其中包含以下内容:

@model Project.Web.Models.QuickRateModel

@{
    Layout = "";
    AjaxOptions options = new AjaxOptions()
    {
        HttpMethod = "Post",
        UpdateTargetId = "quick-rate-content"
    };
}
<div class="clearfix">
    @using (Ajax.BeginForm("GetQuickRate", "QuickRate", null, options, new { @id="quick-rate-form" }))
 {
        <fieldset>
          @Html.DropDownListFor(model => model.ProductId, Model.Products)
          @Html.ValidationMessageFor(model => model.ProductId)
         <select data-val="true" name="DropDown1" data-bind="
                                options: Items1,
                                optionsText :'ItemName',
                                value: SelectedName
                                ">
                            </select>

        <select data-val="true" name="DropDown2" id="DropDown2" data-val-required="Please select an Item." data-bind="
        options: SelectedItem().MoreItems,
        optionsText: 'Text',
        optionsValue: 'Text',
        value: MoreItem,
        optionsCaption: 'Select One'
        "></select>
        <div class="clearfix">
            @Html.ValidationMessageFor(model => model.MoreItems)
        </div>
        <div>
            <input type="submit" value="Get Quick Rate" />
        </div>
        <div id="quick-rate-content"></div>
        </fieldset>
 }
</div>

尝试一下,我可能根本无法渲染表单。只是想知道您是否有任何建议?

干杯!

【问题讨论】:

    标签: c# asp.net-mvc asp.net-mvc-3 razor


    【解决方案1】:

    您已将文件命名为 quickratepartial.cshtml,但在操作中您正在寻找名为 quickrateresult 的视图。这是正确的吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多