У меня есть веб-приложение ASP.net MVC 4.0, которое позволяет пользователю динамически добавлять строки в таблицу html.Как динамически добавлять строку в таблицу html
На мой взгляд:
$('.del').live('click', function() {
id--;
var rowCount = $('#options-table tr').length;
if (rowCount > 2) {
$(this).parent().parent().remove();
}
});
$('.add').live('click', function() {
id++;
var master = $(this).parents("table.dynatable");
// Get a new row based on the prototype row
var prot = master.find(".prototype").clone();
prot.attr("class", "")
prot.find(".id").attr("value", id);
master.find("tbody").append(prot);
});
<table class="dynatable" id="options-table" width="100%" style="text-align:center" border="1">
<tr class="prototype">
<%:Html.EditorFor(m => Model.ChillerDetails)%> //referring to the template
</tr>
<thead>
</table>
В моем шаблоне:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<GMIS.Models.GMISEBModels.ChillerPlantDetails>" %>
<div id="ChillerPlantDetails">
<td><%: Html.EditorFor(m => m.ChillerAge) %></td>
<td><%: Html.EditorFor(m => m.ChillerBrand) %></td>
<td><%: Html.EditorFor(m => m.ChillerCapacity) %></td>
<td><%: Html.EditorFor(m => m.ChillerRefrigerant) %></td>
<td>
<a href="#" class="add"><img src="<%= Url.Content("~/Content/Images/add.png") %>"/> <a href="#" class="del"><img src="<%= Url.Content("~/Content/Images/remove.png") %>"/>
</td>
</div>
В моей модели:
public class AddHealthCheckFormModel
{
public List<ChillerPlantDetails> ChillerDetails { get; set; }
}
public class ChillerPlantDetails
{
//[Required(ErrorMessage = "Please enter Chiller Capacity.")]
[Display(Name = "Chiller Capacity")]
public string ChillerCapacity { get; set; }
//[Required(ErrorMessage = "Please enter Age of Chiller.")]
[Display(Name = "Age of Chiller")]
public string ChillerAge { get; set; }
//[Required(ErrorMessage = "Please enter Chiller Brand.")]
[Display(Name = "Chiller Brand")]
public string ChillerBrand { get; set; }
//[Required(ErrorMessage = "Please enter Chiller Refrigerant.")]
[Display(Name = "Chiller Refrigerant")]
public string ChillerRefrigerant { get; set; }
}
Теперь возникает вопрос, как я могу захватить данные в динамически добавленных строках в мой контроллер и сохранить в базе данных?
Вы можете сохранить строки с помощью ajax-вызова, а также выполнив обратную передачу, что вы хотите с помощью ajax или полной обратной передачи? –