var $ = function(id){
return document.getElementById(id)
}
//全选
function checkAll(target) {
var checkeds = document.getElementsByName("b_id")
for (var i = 0i <checkeds.lengthi++) {
checkeds[i].checked = target.checked
}
}
//刷新行号
function refreshRowNo() {
var tbody = $("tbody")
for (var i = 0i <tbody.rows.lengthi++) {
tbody.rows[i].cells[0].innerHTML = i + 1
}
}
//添加行
function AddRow() {
var tbody = $("tbody")
var row = tbody.insertRow(tbody.rows.length)
row.insertCell(row.cells.length)
row.insertCell(row.cells.length).innerHTML = '<input type="checkbox" name="b_id" />'
row.insertCell(row.cells.length).innerHTML = '<input type="text" name="name" />'
row.insertCell(row.cells.length).innerHTML = '<input type="text" name="number" />'
row.insertCell(row.cells.length).innerHTML = '<input type="text" name="price" />'
row.insertCell(row.cells.length).innerHTML = '<input type="text" name="sum" />'
refreshRowNo()
}
//删除行
function DelRow() {
var checkeds = document.getElementsByName("b_id")
var ischeck = false
for (var i = checkeds.length - 1i >= 0i--) {
if (checkeds[i].checked) {
ischeck = true
break
}
}
if (ischeck) {
if (confirm("确定删除选中行?")) {
for (var i = checkeds.length - 1i >= 0i--) {
if (checkeds[i].checked) {
var index = checkeds[i].parentNode.parentNode.rowIndex
$("tbody").deleteRow(index - 1)
}
}
refreshRowNo()
}
} else {
alert("请选中需要删除的行!")
}
}
//保存
function Save() {
var detail = [],
tbody = $("tbody")
for (var i = 0i <tbody.rows.lengthi++) {
var name = tbody.rows[i].cells[2].childNodes[0].value
var number = tbody.rows[i].cells[3].childNodes[0].value
var price = tbody.rows[i].cells[4].childNodes[0].value
var sum = tbody.rows[i].cells[5].childNodes[0].value
var item = name + "^" + number + "^" + price + "^" + sum
detail.push(item)
}
var detailstr = detail.join("|")
$("detail").value = detailstr
$("myform").submit()
}
</script>
<form name="myform" action="AddOrder.aspx" method="post">
<input type="hidden" id="detail" name="detail" />
<ul>
<li>采购单编号:<input type="text" id="CGDBH" name="CGDBH" /></li>
<li>
供应商名称:<input type="text" id="GYSMC" name="GYSMC" />
<input type="button" onclick="AddRow()" value="增加一行" />
<input type="button" onclick="DelRow()" value="删除" />
<input type="button" onclick="Save()" value="保存" />
</li>
</ul>
<table cellpadding="1" cellspacing="2">
<tr>
<th style="width:60px">序号</th>
<th style="width:20px"><input type="checkbox" onclick="checkAll(this)" /></th>
<th style="width:120px">名称</th>
<th style="width:120px">数量</th>
<th style="width:120px">单价</th>
<th style="width:120px">总金额</th>
</tr>
<tbody id="tbody">
<tr>
<td>1</td>
<td><input type="checkbox" name="b_id" /></td>
<td><input type="text" name="name" /></td>
<td><input type="text" name="number" /></td>
<td><input type="text" name="price" /></td>
<td><input type="text" name="sum" /></td>
</tr>
</tbody>
</table>
</form>
1,动态添加验证规则
// 添加$("#addConnectUser").rules("add",{rules:{required:true,isString:true},messages:{required:"用户名为必填项",isString:"请输入规范字符"}})
// 移除$("#addConnectUser").rules('remove','required')
在此我要讲一下为什么有一个isString验证规则;这个是为了限制表单中input的输入规则;比如:不允许特殊字符,或者一些特殊的要求;这个isString是自己配置的
jQuery.validator.addMethod("isString", function(value, element) {return this.optional(element) || (inputTest.test(value))
},"请输入规范内容")
// 此处的inputTest为你自定义的验证规则
2,如何给已经添加了表单验证的选项移除验证规则
$("#addConnectUser").rules("remove",'required')//再次添加可以直接用$("#addConnectUser").rules("add",'required')
下面是用js动态创建form然后进行post提交的方式,参数url是表单提交的去向,参数params是给去向传递的参数(JSON结构),参数target设置何处打开链接文档(可选):function postcall( url, params, target){
var tempform = document.createElement("form")
tempform.action = url
tempform.method = "post"
tempform.style.display="none"
if(target) {
tempform.target = target
}
for (var x in params) {
var opt = document.createElement("input")
opt.name = x
opt.value = params[x]
tempform.appendChild(opt)
}
var opt = document.createElement("input")
opt.type = "submit"
tempform.appendChild(opt)
document.body.appendChild(tempform)
tempform.submit()
document.body.removeChild(tempform)
}