function NumberCalc(update)
{
var datacell = document.all.item("Table6");
var handle_cell = datacell.cur_cell;
var entityName = event.srcElement.value;
if(!handle_cell) return;
var handle_row = handle_cell.parentNode;
if(update){
var editor=datacell.getEditor(handle_cell);
if(editor.text.value==handle_cell.value) return;
var cellArray=new Array(3,4,5);
for(cellIndex in cellArray){
var tempValue;
if(handle_cell.cellIndex==cellArray[cellIndex]){
continue;
}
cellArray[cellIndex]=handle_row.cells[cellArray[cellIndex]];
tempValue=cellArray[cellIndex].innerText;
refreshBack(cellArray[cellIndex],tempValue);
}
movetonextcell(handle_cell); }else{
if(event.propertyName!="value") return;
var cellArray=new Array(3,4,5);
for(cellIndex in cellArray){
if(handle_cell.cellIndex==cellArray[cellIndex]){
cellArray[cellIndex]=event.srcElement;
}else{
cellArray[cellIndex]=handle_row.cells[cellArray[cellIndex]];
}
}
var BUILD_NUMBERT=cellArray[0].value;
var BUILD_PRICE=cellArray[1].value;
cellArray[2].innerText=(BUILD_NUMBERT*BUILD_PRICE).toFixed(2).toString();
}
}
function refreshBack(namecell,ret_value){
var datacell=document.all.item("Table6");
var handle_entity =datacell.cur_row.entity;
var name=namecell.name;
if(isNaN(parseFloat(ret_value)))
{
namecell.innerText = ret_value;
namecell.value = ret_value;
}else{
namecell.innerText = parseFloat(ret_value).toFixed(2).toString();
namecell.value = parseFloat(ret_value).toFixed(2).toString();
}
datacell.dataset.setValue(handle_entity,name,ret_value);
}
上面是写好的第五列=第三列*第四列 情况时的代码。现在的问题是 把计算部分改为
var table = document.getElementById("Table5");
var NUM1=table.tBodies[0].rows[0].cells[3].value;
var NUM2=table.tBodies[0].rows[1].cells[3].value;
var PRICE1=table.tBodies[0].rows[0].cells[4].value;
var PRICE2=table.tBodies[0].rows[1].cells[4].value;
table.tBodies[0].rows[0].cells[5].innerHTML=NUM1*PRICE1;
table.tBodies[0].rows[1].cells[5].innerHTML=NUM2*PRICE2;
这种情况之后上面的代码要做哪些改动了?怎样把计算结果参数传到下面那个函数?
[ 本帖最后由 awgbby 于 2008-1-9 10:36 编辑 ]