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. ...
随机推荐
- android——使用自带录屏工具进行屏幕录像
在做开源项目的时候,想传一个gif效果图上去.但是,要有连贯的动画效果.所以,就想到先录制视频,然后视频转gif.但是,用第三录屏软件总是不完美. 那么,怎么办呢? android4.4 提供了自带录 ...
- easyui-window
<div id="win" class="easyui-window" title="My Window" style="w ...
- 关于 knockout js 学习中的疑问 (1)
最近刚刚学习knockout中遇到如下问题: 1.在给viewModel定义一个方法时,有时后面跟 的this,有的时候没有 如下所示: this.fullName = ko.computed(fun ...
- icon数目
[UIApplication sharedApplication].applicationIconBadgeNumber = currentBadgeValue.integerValue;
- ARM入门实践(一)----Mini6410上最简单的LED点灯裸机程序
Mini6410上最简单的LED点灯裸机程序 : 实验环境: 根据友善教程,要用ADS,据说现在都不用这个了,但是为了打开友善给的mcp工程,就下了一个,Win7下弄上兼容模式和管理员权限,再下一个S ...
- Gengxin讲STL系列——Set
本系列第二篇blog 第一篇写的心潮澎湃,结果写完一看,这都是些什么玩意= =| Set的中文名称是“集合”.集合,高一数学必修一课本给出的定义已经很明确了,简单来讲就是一个不含重复元素的空间(个人定 ...
- Eclipse控制台显示Tomcat日志
今天看一篇学习Struts的博文,文章里面提到从生成的日志,结果,怎么鼓捣都看不到.心情也跟着烦躁了.于是晚饭后出去散步,冷静一下,然后决定晚上一定搞掂这个问题.这不,搞掂了,写篇博文记录一下. St ...
- Lenovo Y430P安装Linux无线网卡
新买了一台Lenovo Y430P的笔记本,笔记本自带的无线网卡型号是BCM43142.安装了CentOS6.5的操作系统后,按照网上搜索到的网址http://zh-cn.broadcom.com/s ...
- css:hover选择器
:hover 选择器用于选择鼠标指针浮动上面的元素. :hover选择器可以用于所有的元素,不单是链接. 提示::link选择器设置指向未被访问页面的链接的样式,:visited选择器用于设置指向已被 ...
- [C++程序设计]有关形参与实参,及返回值说明
有关形参与实参的说明:(1) 在定义函数时指定的形参,在未出现函数调用 时,它们并不占内存中的存储单元,因此称它们是 形式参数或虚拟参数,表示它们并不是实际存在的数据,只有在发生函数调用时,函数max ...