急啊急啊,今天要交货,谁来帮帮忙,告诉我这个怎么实现,帮帮忙,各位大虾
在一个for循环的表格里,循环的次数控制表格的数量,
每个表格有多个产品,每个产品后面有1个输入框,如下图所示:
产品 描述 数量 出口数量
1 烦啊 (从数据库读取) (输入框)
2 急啊 (从数据库读取) (输入框)
问题是这样:
在产品1的输入框里输入数量,然后按enter,通过javascript计算,如果数量有剩余,那么在产品1的下面自动生成一行,如下图所示:
产品 描述 数量 出口数量
1 烦啊 (从数据库读取) (输入框)
1 烦啊 (剩余数量) (输入框)
2 急啊 (从数据库读取) (输入框)
然后光标自动移动到下一个输入框,
如果在新生成的这一行里,输入数量,通过javasctipt计算,如果还有剩余
那么再生成新的一行,一直到剩余数量为零。如下图所示:
产品 描述 数量 出口数量
1 烦啊 (从数据库读取) (输入框)
1 烦啊 (剩余数量) (输入框)
1 烦啊 (剩余数量) (输入框)
2 急啊 (从数据库读取) (输入框)
光标继续自动往下移,请问要实现这个功能,应该怎么做?
想了2天了,找了很多资料,都没有实现,请问那个大虾可以帮帮忙,
我愿意以身相许啊~
老板要我今天交货,我还做不出来啊,555555555,急啊,帮帮忙,各位大虾
[解决办法]
http://community.csdn.net/Expert/topic/5551/5551505.xml?temp=.998562
为什么不行?
[解决办法]
这个是不是你要的
<script language= "javascript ">
function jisuan(obj)
{
var shengyuO= "s "+obj.id;
var s11=document.getElementById(shengyuO);
var s=parseInt(s11.value);
var x11=obj;
var x=parseInt(x11.value);
var zhi=s-x;
if (zhi > 0 )
{
addtolist(zhi);
s11.id= "ssss ";
x11.id= "xxx ";
}
}
function addtolist(num)
{
var list=document.getElementById( "nslist ");
var tr=list.insertRow();
var dd=tr.insertCell();
var dd2=tr.insertCell();
var dd3=tr.insertCell();
var newTextId= "x1 ";
dd.innerText= "1 烦啊 ";
dd2.innerHTML= ' <input id=s '+newTextId+ ' type=text value= '+num+ ' size=10/> ';
dd3.innerHTML= ' <input id= '+newTextId+ ' type= "text " size= "10 " onkeydown= "KeyDown(this) "/> ';
}
function KeyDown(obj){
if(event.keyCode== "13 "){
jisuan(obj);
}
}
</script>
<table id= "nslist " width= "300 " border= "1 " align= "center " cellpadding= "0 " cellspacing= "0 ">
<tr id= "tr1 ">
<td > 1 烦啊 </td>
<td> <input id= "sx1 " name= "s1 " type= "text " value= "50 " size= "10 " readonly= "true "/> </td>
<td > <input id= "x1 " name= "x1 " type= "text " size= "10 " onkeydown= "KeyDown(this) " /> </td>
</tr>
</table>
[解决办法]
如果输入框的值小于从当前行数据库读取的值,那么就在此行后插入一行,并将新插入行的产品、描述设置为与前行一样,剩余数据轩为前行数据库读取的值-前行输入框的值
var oEventRow = event.srcElement.parentElement.parentElement;
var index = oEventRow.rowIndex;
var oTable = oEventRow.parentElement;
var oRow = oTable.insertRow(index+1);
var oCell = oRow.inserCell();
oCell.innerText = oEventRow.cells[0].innerText; //产品
oCell = oRow.inserCell();
oCell.innerText = oEventRow.cells[1].innerText; //描述
oCell = oRow.inserCell();
oCell.innerText = 剩余数量;
oCell = oRow.inserCell();
oCell.innerHTML = " <input type= 'text ' value= ' ' 事件...> "
