/**
* 编辑区表格布局样式初始化
* @param objId 编辑区域table元素的id
* @return
*/
function initEditArea(objId) {
var table = $(objId);
var rows = table.rows;
for(var i=0; i<rows.length; i++) {
cells = rows[i].cells;
for(var j=0; j<cells.length; j++) {
if(j%2 == 0) {
cells[j].style.backgroundColor="#E7F1FE";
} else {
cells[j].style.backgroundColor="#F8FBFF";
}
}
}
}
/**
* 给select插入默认值
* @param selectTag select元素对象
* @param desc 默认值的描述
*/
function insertDefaultOption(selectTag,desc,sValue) {
if(typeof sValue == "undefined" || sValue == null) {
sValue = "";
}
if(desc == null) desc = "";
var obj = eval(selectTag);
var newOption = document.createElement('option');
newOption.innerHTML=desc;
newOption.setAttribute("value",sValue);
obj.options[0].parentNode.insertBefore(newOption,obj.options[0]);
obj.selectedIndex = 0;
}
/**
* 清空form
* @param oForm为form对象
*/
function resetForm(oForm){
var oForm = eval(oForm);
for(var i = 0; i < oForm.elements.length; i++){
var e = oForm.elements[i];
if( e.type == null ) continue;
if( e.tagName.toUpperCase() == "INPUT" ){
if( e.type.toUpperCase() == "TEXT" || e.type.toUpperCase() == "PASSWORD" ) {
e.value = "";
}
if( e.type.toUpperCase() == "RADIO" ) e.checked = false;
if( e.type.toUpperCase() == "CHECKBOX" ) e.checked = false;
if( e.type.toUpperCase() == "HIDDEN" ){
if( typeof(e.setEnable) == "function" ){
e.setValue(getTime());
}
}
}
if( e.tagName.toUpperCase() == "SELECT" ) {
try{
if(e.options.length > 0) //e.options[0].selected = true;
e.value = "";
} catch(ex){}
}
if( e.tagName.toUpperCase() == "TEXTAREA" ) {
e.value = "";
}
}
}
/**
* 设控件是否为只读
* @param obj 控件
* @param isRead true为只读,false为可编辑
* @return
*/
function setInputEnable(obj, isRead){
try{
if(obj.tagName.toUpperCase()=="SELECT"
|| obj.type.toUpperCase()=="CHECKBOX")
obj.disabled = isRead;
else
obj.readOnly = isRead;
if (isRead){ //不可编辑样式
obj.className="input-gray";
}else{ //可编辑样式
obj.className="";
}
}catch(ex){
alert("setInputEnable()===>"+ex.description);
}
}
/**
* 检查输入字段是否是固定长度的数字
* obj input对象
* length 固定的数字长度
* desc 字段名称
*/
function checkNumOfGivenLength(obj, length, desc) {
var str = obj.value;
if(str.length == 0) {
return true;
}
var pattern = /^-?/d+$/;
if(str.match(pattern) == null || str.length != length) {
showMsg("“"+desc+"”必须为一个长度为"+length+"的数字,请修改!");
return false;
}
return true;
}
/**
* 检查输入字段是否合法
*
* obj input对象
* name 字段名称
* isNull 是否可为空
* length 长度
* isNum 是否为数字
* iMin 最小值
* iMax 最大值
*/
function checkField(obj, name, isNull, length, isNum, iMin, iMax) {
if(arguments.length < 5) {
throw new Error("传入的参数太少,至少需要5个参数。");
}
else if(isNum && arguments.length != 7) {
throw new Error("传入的参数太少,需要7个参数。");
}
var value = obj.value;
if(!isNull && value.length == 0){
showMsg("“"+name+"”不可为空!");
obj.focus();
return false;
}
if(isNum){
var pattern = /^-?/d+$/;
if(value.match(pattern) == null) {
showMsg("“"+name+"”必须为一个数字,请修改!");
obj.focus();
return false;
} else {
if ((typeof(iMin)=="undefined") || (typeof(iMax)=="undefined")){
return true;
}
if ((value <= iMax) && (value >= iMin)){
return true;
}else{
showMsg("“"+name+"”必须介于"+iMin+"与"+iMax+"之间!");
obj.focus();
return false;
}
}
}
if(getStrLength(value) > length) {
var sDesc = "";
if(!isNum) {
sDesc = "(一个汉字的长度为2)";
}
showMsg("“"+name+"”长度不能超过"+length+"!"+sDesc);
obj.focus();
return false;
}
return true;
}
/**
* 获得字符串长度,一个汉字两个
*/
function getStrLength(strTemp){
var i,sum;
sum=0;
for(i=0;i<strTemp.length;i++){
if ((strTemp.charCodeAt(i)>=0) && (strTemp.charCodeAt(i)<=255))
sum=sum+1;
else
sum=sum+2;
}
return sum;
}