-1
嗨所有我想创建一个视图与添加和删除按钮行中的行是部分视图。这是迄今为止我所拥有的。动态添加删除部分视图与下拉列表MVC
主视图
<fieldset>
<legend>Add Associated Assessments</legend>
<div id="divPartial"></div>
<input type="button" id="addassessment" name="addassessment" value="Add Assessment" />
<br />
@section Scripts
{
<script type="text/javascript">
$('#addassessment').on('click', function() {
$.ajax({
async: false,
url: '/PositionAssessments/AddNewAssessment'
}).success(function (partialView) {
$('#divPartial').append(partialView);
});
});
$("#deleteRow").on("click", function() {
$(this).parents("#assessmentRow:first").remove();
return false;
});
</script>
}
</fieldset>
局部视图
@model MyApp.Models.AssessmentAddView
@{
Layout = null;
}
@using (Html.BeginCollectionItem("Assessments"))
{
<div id="assessmentRow" class="assessmentRow">
@Html.DropDownListFor(m => m.SelectedId, Model.Data, "Select Assessment", new { @class = "form-control", @style = "display: inline" })
<input type="button" id="deleteRow" name="deleteRow" value="Delete Row" />
</div>
}
AssessmentAddView类
public class AssessmentAddView
{
public IEnumerable<SelectListItem> Data { get; set; }
public string SelectedId { get; set; }
}
控制器
public ActionResult AddNewAssessment()
{
return PartialView("_Assessment");//return your partial view here
}
public ActionResult _Assessment()
{
var model = new AssessmentAddView
{
Data = ViewBag.AssessmentList = new SelectList(db.tblAssessment.OrderBy(a => a.AssessmentName), "Id", "AssessmentName")
};
return View(model);
}
好吧,当我点击添加评估我得到一个内部错误(500),但如果我拿出下拉并放入一些基本的文字,它的作品。
如果我把它作为基本文本和添加的作品,删除按钮不会没有任何错误的工作。
如果我去的局部视图本身,它加载罚款下拉和所有的评估。
什么我做错了任何想法?
我看不到onclick =“deleteFunction()”的删除功能。这是一个可能的错误? –
感谢您的发现。我已更新代码以反映删除。删除按钮现在没有任何错误。 – SliderUK