$number
=
"10".date("Ymd",time())
可以得到10开头紧接年月日及时间(到秒)如1020120603
$number
=
"10".date("YmdHis",time())
可以得到10开头紧接年月日及时间(到秒)如1020120603231120
如果怕有重复可以在接一些随机数
$number
.=
rand(1000,9999)
这个其实应该是服务端输出的。
好吧,先不管这个。你的问题是怎么用JS输出。
首先,我们要做个重复内容的模版。JS模版有很多啦,像Handlebars呀等等。这里就用最简单的字符串拼接方式吧。
var render = function (i) {var output = ""
output += "<div>第" + i + "位乘机人</div>"
output += "<label>姓名</label>"
...
return output
}
OK,这就是我们要的。
接下来获取已经填写的乘机人的数量。
var personsLength = $(".person").length这个你自己看是从DOM里拿,还是从数据里拿。个人建议从数据里拿比较好。
var personsLength = persons.length然后渲染出我们要的内容
var output = render(personsLength)再插入页面
根据图示,似乎是每次只填一个人的详情。那我们就直接替换就好了。
$(".form-wrapper").html(output)或者你想每个都列出来
$(".form-wrapper").append(output)这样只要在每次点击添加按钮的时候,做上述的事情就可以了。
$(".btn-add").on("click", function () {var personsLength = persons.length
var output = render(personsLength)
$(".form-wrapper").append(output)
})
这边写了个,请保存为 表格.html测试<html>
<body>
<h1>JavaScript 生成表格</h1>
<h2>行:<input id=mrow type=number/>
列:<input id=mcolumn type=number/>
<input type="button" value="生成表格" onclick="gettable()" /></h2>
<hr/>
<p id="demo"></p>
<script type="text/javascript">
function gettable()
{
mrow=document.getElementById("mrow").value
mcolumn=document.getElementById("mcolumn").value
mytable="<table border=1>"
for (i = 0i <mrowi++) {
mytable += "<tr>"
for(j=0j<mcolumnj++){
mytable+="<td>"+"第"+(i+1)+"行 第"+(j+1)+"列"+"</td>"
}
mytable += "</tr>"
}
mytable+="</table>"
document.getElementById("demo").innerHTML=mytable
}
</script>
</body>
</html>