js 行列操作
function insertRow() {
var tbl = document.getElementById("tbCarModel");
var rowLen = tbl.childNodes.length;
var newTr = tbl.insertRow(rowLen - 1);
// var newTr = document.createElement("tr");
// tbl.appendChild(newTr);
var td = document.createElement("td");
var temptd = td.cloneNode(1);
newTr.appendChild(temptd);
temptd.appendChild(createCarModel());
temptd = td.cloneNode(1);
newTr.appendChild(temptd);
temptd.appendChild(createNumber());
temptd = td.cloneNode(1);
newTr.appendChild(temptd);
temptd.appendChild(createCarSum());
temptd = td.cloneNode(1);
newTr.appendChild(temptd);
temptd.appendChild(createAddBtn());
}
function removeRow(tbl) {
if (tbl.rows.length > 3)
tbl.deleteRow(tbl.rows.length - 2);
getCarModel();
}
function upRow(tbl) {
var len = tbl.rows.length - 1;
tbl.rows[len].cells[3].firstChild.value = "删除一行";
}
function createCarModel() {
var text1 = document.createElement("input");
text1.onblur = function () {
if (text1.value.length > 20) {
alert("车型不能大于20");
text1.value = "";
return false;
}
}
return text1;
}
function createNumber() {
var text1 = document.createElement("input");
text1.onblur = function () {
if (text1.value.length > 20) {
alert("订单号不能大于20");
text1.value = "";
return false;
}
}
return text1;
}
function createCarSum() {
var text1 = document.createElement("input");
text1.onblur = function () {
var reg = new RegExp("^[0-9]*$"); // "^(.)*[0-9]*(.)*$"//"^[0-9]*$"
if (!reg.test(text1.value)) {
alert("请输入数字!");
text1.value = "";
}
getCarModel();
}
return text1;
}
function createAddBtn() {
var tbl = document.getElementById("tbCarModel");
var btn1 = document.createElement("input");
btn1.setAttribute("type", "button");
btn1.setAttribute("value", "删除一行");
btn1.onclick = function () {
// if (btn1.value == "添加一行") {
GetCarValues();
removeRow(tbl);
// insertRow();
// btn1.setAttribute("value", "删除一行");
// } else {
// if (tbl.rows.length > 2) {
// upRow(tbl);
//// }
}
// }
return btn1;
}
function getCarModel() {
var tbl = document.getElementById("tbCarModel");
var len = tbl.rows.length;
var row;
var ctl;
var result = 0;
var no;
for (var i = 1; i < len - 1; i++) {
row = tbl.rows[i];
ctl = row.cells[2].firstChild;
if (ctl.value == "" || ctl.value == null) {
no = 0;
} else {
no = parseInt(ctl.value);
}
result = result + no;
}
document.getElementById("ctl00_PlaceHolderMain_txtCarSum1").value = result;
}
function GetCarValues() {
var tbl = document.getElementById("tbCarModel");
var len = tbl.rows.length;
var row;
var ctl;
var result = "";
for (var i = 1; i < len - 1; i++) {
row = tbl.rows[i];
ctl = row.cells[0].firstChild;
result += ctl.value + "/";
ctl = row.cells[1].firstChild;
result += ctl.value + "/";
ctl = row.cells[2].firstChild;
result += ctl.value + "$";
}
document.getElementById("ctl00_PlaceHolderMain_hidCarModel").value = result;
}
function BindTable() {
var carValue = document.getElementById("ctl00_PlaceHolderMain_hidCarModel").value;
var carArray = new Array();
if (carValue != "")
carArray = carValue.split("$");
//添加空行
for (var i = 0; i < carArray.length - 1; i++) {
insertRow();
}
var tbl = document.getElementById("tbCarModel");
var len = tbl.rows.length;
var row;
var ctl;
var result = "";
var car11 = new Array();
for (var i = 1; i < len - 1; i++) {
car11 = carArray[i - 1].split("/");
row = tbl.rows[i];
ctl = row.cells[0].firstChild;
ctl.value = car11[0];
ctl = row.cells[1].firstChild;
ctl.value = car11[1];
ctl = row.cells[2].firstChild;
ctl.value = car11[2];
}
document.getElementById("ctl00_PlaceHolderMain_hidCarModel").value = result;
}
function CarModelLoad() {
var objCarType = $("#ctl00_PlaceHolderMain_SelCarType").val();
$("#lblCarType1").html(objCarType);
$("#lblCarType2").html(objCarType);
var objProjectName = $("#ctl00_PlaceHolderMain_SelProjectName").val();
$("#lblProjectName1").html(objProjectName);
$("#lblProjectName2").html(objProjectName);
$("#ctl00_PlaceHolderMain_SelCarType").change(function () {
var objCarType = $("#ctl00_PlaceHolderMain_SelCarType").val();
$("#lblCarType1").html(objCarType);
$("#lblCarType2").html(objCarType);
});
$("#ctl00_PlaceHolderMain_SelProjectName").change(function () {
var objProjectName = $("#ctl00_PlaceHolderMain_SelProjectName").val();
$("#lblProjectName1").html(objProjectName);
$("#lblProjectName2").html(objProjectName);
});
getCarModel();
}
function CheckValidForSave() {
if (IsValueNull(txtReason, "请填写申请原因!"))
return false;
if (IsValueNull(txtCarSum, "请填写申请车辆台数!"))
return false;
if (IsValueNull(txtEndTime, "请填写还款日期!"))
return false;
if (IsValueNull(txtCompanyName, "请填写公司名称!"))
return false;
var carNum1 = document.getElementById("ctl00_PlaceHolderMain_txtCarSum").value;
var carNum2 = document.getElementById("ctl00_PlaceHolderMain_txtCarSum1").value;
if (carNum1 != carNum2) {
alert("填写车辆数量不一致");
return false;
}
var reason = document.getElementById("ctl00_PlaceHolderMain_txtReason").value;
if (reason.length >= 200) {
alert("欠款发车原因过长,请控制在200字以内!");
return false;
}
var reason = document.getElementById("ctl00_PlaceHolderMain_txtCompanyName").value;
if (reason.length > 50) {
alert("公司签名不能大于50");
return false;
}
var date1 = document.getElementById("ctl00_PlaceHolderMain_txtEndTime").value;
var today = getNowFormatDate();
var startDate = new Date(today.replace("-", ",")).getTime();
var endDate = new Date(date1.replace("-", ",")).getTime();
if (startDate > endDate) {
alert("还款时间不能小于申请时间");
return false;
}
GetCarValues();
}
function CheckTable() {
var tbl = document.getElementById("tbCarModel");
var len = tbl.rows.length;
var row;
var ctl;
var result = "";
for (var i = 1; i < len - 1; i++) {
row = tbl.rows[i];
ctl = row.cells[0].firstChild;
result = ctl.value;
if (result == "") {
return false;
}
ctl = row.cells[1].firstChild;
result = ctl.value;
if (result == "") {
return false;
}
}
}
js 行列操作的更多相关文章
- jquery实现点击展开列表同时隐藏其他列表 js 对象操作 对象原型操作 把一个对象A赋值给另一个对象B 并且对象B 修改 不会影响 A对象
这篇文章主要介绍了jquery实现点击展开列表同时隐藏其他列表的方法,涉及jquery鼠标事件及节点的遍历与属性操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了jquery实现点击 ...
- js简单操作Cookie
贴一段js简单操作Cookie的代码: //获取指定名称的cookie的值 function getCookie(objName) { var arrStr = document.cookie.spl ...
- 使用HTML5的JS选择器操作页面中的元素
文件命名为:querySelector.html,可在Chrome浏览器中预览效果. 1 <!DOCTYPE html> 2 <html lang="en"> ...
- node.js高效操作mongodb
node.js高效操作mongodb Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为Jav ...
- js字符串操作
javascript中字符串常用操作总结.JS字符串操作大全 String对象属性 (1) length属性 length算是字符串中非常常用的一个属性了,它的功能是获取字符串的长度.当然需要注意的是 ...
- Node.js之操作文件系统(一)
Node.js之操作文件系统(一) 1. 同步方法与异步方法 在Node.js中,使用fs模块来实现所有有关文件及目录的创建.写入及删除操作.,在fs模块中,所有对文件及目录的操作都可以使用同步与异步 ...
- Node.js之操作文件系统(二)
Node.js之操作文件系统(二) 1.创建与读取目录 1.1 创建目录 在fs模块中,可以使用mkdir方法创建目录,该方法的使用方法如下: fs.mkdir(path,[mode],callbca ...
- js数组操作-添加,删除
js 数组操作常用方法. push():在数组后面加入元素,并返回数组的长度 unshift():在数组前面加入元素,并返回数组的长度 pop()删除最后一个元素 shift()删除第一个元素 var ...
- 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作
页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...
随机推荐
- Selenium WebDriver 学习笔记
1. 打开VS2012 2. 新建工程(单元测试工程或控制台程序都可以, 看需求) 3. 工具->NuGet程序包管理器->程序包管理器控制台 4. 输入"Install-Pac ...
- 公司项目笔记-导出excel
一.asp.net中导出Excel的方法: 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出流写给浏览 ...
- SQL重复记录查询的几种方法(转)
1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 代码如下: select * from people ) 2.删除表中多余的重复记录,重复记录是根据单个字段(people ...
- (转) mac 下的eclipse 配置 python 2.7
原地址: http://marsfreewill.blogspot.it/2012/08/mac-ospythonpydeveclipse.html 在MAC OS上配置Python开发环境(Py ...
- java开发webservice
第一部分:相关下载配置 1.开发环境 eclipse-jee-mars-2-win32-x86_64.zip http://www.eclipse.org/downloads/index-pac ...
- html css 笔记
cursor其他取值 鼠标移入 auto :标准光标 default :标准箭头 pointer :手形光标 wait ...
- 利用raspberry pi搭建typecho笔记(三) typecho nginx sqlite FAQ
前言 这是一个汇总文,用来总结我在整个配置过程中遇到的各种问题.因为我在解决这些问题的过程中发现,typecho被部署在这种需要完全自己配置的平台上的情况是比较少的,相关的资料也比较少,所以我的解决过 ...
- 当浏览器输入url的时候发生了什么
当用户在浏览器地址栏里面输入一个url的时候.接下来会发生一系列的过程.首先是DNS解析, 将域名转换成对应的IP地址,之后浏览器与远程Web服务器通过TCP三次握手协商来建立一个TCP/IP连接.该 ...
- ipad安装自制ipa
自己用XCode写了个小程序,想打包成ipa安装在真机上,网上查了查: 1.将工程的编译版本设置为release(在edit scheme里): 2.build for Archiving(Produ ...
- Mybatis的连接池
先总结一个原则:mytatis的连接池最大值poolMaximumActiveConnections尽量跟服务器的并发访问量持平以至于大于并发访问量. 原因:在org.apache.ibatis.da ...