一,动态生成JS写法
<script type="text/javascript"> var numlist = new Array(2, 3, 4, 5); function Additional() { var num = $("#AdditionalNum").val(); //定义的隐藏的保存当前在页面上存在的数量,最多五个 if (num == 5) { alert("最多加五个"); return; } var deleteNo = numlist.shift(); num++; var append = ‘<li class="list-group-item"><form class="form-inline" role="form" action="#">‘; append += ‘ <input type="text" class="form-control" name="Text‘ + deleteNo + ‘" placeholder="名称2"> <input type="text" class="form-control" id="Text4" placeholder="名称2">‘; append += ‘<input type="button" id="Button1" value="确定" class="btn btn-info"></form></li>‘; $("#AdditionalList").append(append); $("#AdditionalNum").val(num); Maopao(numlist); //alert(num); } function AdditionalRemove(obj, id) { var num = $("#AdditionalNum").val(); //定义的隐藏的保存当前在页面上存在的数量删除是减少 num--; $(obj).parent().parent().parent().parent().remove(); //移除父节点 $("#AdditionalNum").val(num); //定义的隐藏的保存当前在页面上存在的数量 numlist.push(id); } function Maopao(obj) { for (var i = 0; i < obj.length - 1; i++) { if (obj[i] > obj[i + 1]) { var temp = obj[i]; obj[i] = obj[i + 1]; obj[i + 1] = temp; } } } </script>
二,MCV后台获取代码
public ActionResult Test(FormCollection collection) { //var inputCount = 0; //可以动态获取文本框的数量,这里定义为五个 var inputValues = new List<string>();//将提交过来的输入框的值放到这个集合 for (int i = 1; i <= 5; i++) { if (!string.IsNullOrEmpty(collection["Test" + i])) { inputValues.Add(collection["Test" + i]); } } return RedirectToAction("Index"); }
三,总结
1,用为空性判断,如果输入的为空则会过滤,以至于不会将空值插入到数据库报错
2,前端遍历生成的input的Name不能相同,则需要处理,如上例子
时间: 2024-10-16 13:31:51