在ASP MVC中将所有动态添加的文本框保存到数据库的两列中,可以通过以下步骤实现:
下面是一个示例代码,展示如何实现上述步骤:
前端视图页面(HTML、JavaScript或jQuery部分):
<!-- 示例文本框,用于动态添加 -->
<input type="text" name="dynamicTextBox" id="dynamicTextBox1" />
<button onclick="addTextBox()">添加文本框</button>
<script>
var counter = 2;
function addTextBox() {
var newTextBox = $('<input type="text" />');
newTextBox.attr('name', 'dynamicTextBox');
newTextBox.attr('id', 'dynamicTextBox' + counter);
$('#textBoxContainer').append(newTextBox);
counter++;
}
</script>
后端控制器:
[HttpPost]
public ActionResult SaveTextBoxValues(List<string> dynamicTextBox)
{
// 将动态添加的文本框的值存储到数据库
using (var context = new YourDbContext())
{
foreach (var value in dynamicTextBox)
{
var entity = new YourEntityModel();
entity.ColumnName = value; // 将文本框值存储到相应列中
context.YourEntityModels.Add(entity);
}
context.SaveChanges();
}
return RedirectToAction("Index");
}
数据库上下文类和实体模型类:
public class YourDbContext : DbContext
{
public DbSet<YourEntityModel> YourEntityModels { get; set; }
// 其他数据库上下文相关的配置和实体模型类
}
public class YourEntityModel
{
public int Id { get; set; }
public string ColumnName { get; set; }
// 其他与数据库表对应的属性
}
这样,当用户提交表单时,动态添加的文本框的值将会被保存到数据库的相应列中。注意在实际应用中,需要根据实际情况进行适当的修改和增强,例如表单验证、错误处理等。
领取专属 10元无门槛券
手把手带您无忧上云