【发布时间】: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