response.write 写法的asp数组问题?急

zeng_job 2009-07-11 12:12:16
1.A通过ajax返回B查询的一组数,这组数在A页面依次与文本框的输入值进行计算,并显示计算结果;
2.A页面的返回值与文本框输入值,提交依次写入数据库。
3.B页面
set rs=server.createobject("adodb.recordset")
sql="select * FROM product where class_id='"&class_id&"' and provider_id='"&provider_id&"' and online=1"
rs.open sql,conn,1,1
If rs.eof Then
Else
response.write ("<table width=""700"" border=""0"" align=""center"" cellpadding=""0"" cellspacing=""0"" bordercolor=""#CCCCCC"">")
response.write "<tr><td align=""center"" valign=""middle""><table width=""100%"" border=""1"" align=""center"" cellpadding=""0"" cellspacing=""1"" bordercolor=""#CCCCCC"">"
response.write "<tr><td width=""63"" align=""center"">商品编号</td><td width=""140"" align=""center"">商品名称</td><td width=""288"" align=""center"">规 格</td><td width=""60"" align=""center"" nowrap>单 价(¥)</td><td width=""52"" align=""center"">数 量</td><td width=""76"" align=""center"">小计(¥)</td></tr>"
if not rs.eof then
i=1
do while not rs.eof
response.write ("<tr><td width=""63"" align=""center"">"&rs("product_id")&"")
response.write "<input id=""product_id"" value='"&rs("product_id")&"' type=""hidden""/></td>" '商品编号
response.write ("<td width=""140"" align=""center"">"&rs("product_name")&"</td>")
response.write ("<td width=""288"" align=""center"">"&rs("specification")&"</td>")
response.write ("<td width=""60"" align=""center"">"&rs("price")&"")
'response.write "<input name=""price"" value='"&rs("price")&"' type=""hidden""/></td>" '单价
response.write "<input name=""price"" id='""price"&("i")&"' value='"&rs("price")&"' type=""hidden""/></td>"
response.write ("<td align=""center"" valign=""middle"" nowrap>")
response.write ("<input name=""quantity"" id=""quantity"" type=""text"" onKeyUp=""value=value.replace(/[^\d|]/g,'')"" size=""5"" maxlength=""5"" onBlur=""sum(this)""/>")
response.write ("<td width=""76"" align=""center"">")
response.write "<input name=""amount"" id=""amount"&("i")&" readonly=""true""/></td>"
response.write("</tr>")
'******************上面是你要显示的******************'
i=i+1
rs.movenext
loop
end if
end if
rs.close
conn.close
response.write "</table>"
response.write "<tr><td align=""center"" valign=""middle""><table width=""100%"" border=""1"" align=""center"" cellpadding=""0"" cellspacing=""1"" bordercolor=""#CCCCCC"">"
response.write "<tr><td align=""center"">合 计:</td>"
response.write "<td width=""223"" align=""right"">总 量:<input name=""number_sum"" type=""text"" size=""5"" readonly=""ture"" style=""font:bolder;color:#FF0000""/></td>"
response.write "<td width=""158"" align=""center"">总价:<input name=""amount_sum"" type=""text"" size=""8"" readonly=""ture"" style=""font:bolder;color:#FF0000""/>元</td>"
response.write "</tr>"
response.write "<tr><td align=""center"" valign=""middle"">备注:<span style=""color: #FF0000"">*</span></td>"
response.write "<td colspan=""2"" align=""left"" valign=""middle""><textarea name=""remark"" cols=""52"" rows=""3"" onBlur=""sum()""></textarea></td>"
response.write "</tr>"
response.write "</table></td>"
response.write "<tr><td height=""22"" colspan=6>"
response.write "</td></tr>"
response.write "</table>"

红色部分的应该写错了,但不知道怎么写,
...全文
357 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zeng_job 2009-07-11
补充:图示下面的商品是活动的,在数量栏填写,在小计里自动计算,合计自动计算。这个问题怎么解决?谢谢~B页面是JJAX调用的查询页面。
回复
Dogfish 2009-07-11
response.write " <input name=""amount"" id=""amount" & i & " readonly=""true""/> </td>" 
回复
toury 2009-07-11
回复
zeng_job 2009-07-11
谢谢各位,第一问题解决了,现在要解决的是:在A页面的返回列表文本框输入值,提交依次写入数据库?谢谢~
回复
toury 2009-07-11
'response.write " <input name=""price"" value='"&rs("price")&"' type=""hidden""/> </td>" '单价
response.write " <input name=""price"" id='price"&i&"' value='"&rs("price")&"' type=""hidden""/> </td>"
response.write (" <td align=""center"" valign=""middle"" nowrap>")
response.write (" <input name=""quantity"" id='quantity"&i&"' type=""text"" onKeyUp=""value=value.replace(/[^\d|]/g,'')"" size=""5"" maxlength=""5"" onBlur=""sum(this)""/>")
response.write (" <td width=""76"" align=""center"">")
response.write " <input name=""amount"" id='amount"&i&"' readonly=""true""/> </td>"

回复
toury 2009-07-11
for(var m=0;m<i;m++){
----->改为
for(var m=0;m<num;m++){

回复
toury 2009-07-11
你有多少行?服务器端好像有了,是i行吧

function calc(){
var num=<%=i%>
var oPrice=null;
var oQty=null;
var subtotal=0;
var total=0;

for(var m=0;m<i;m++){
oPrice=document.getElementById("price"+m)
oQty =document.getElementById("quantity"+m)
subtotal=oPrice.value*oQty.value.toString().toFix();'记不清了反正是四舍五入一类的东东,自己找找资料
total+=subtotal;
}
//这个total可能就是你说的“小计”
total=total.tofix()//.......................
//在你的小计那里放个什么标签,然后把这个total装进去
//...............
}

calc();

回复
zeng_job 2009-07-11
各位高手
response.write " <input name=""price"" d='price"&i&"' value='"&rs("price")&"'/> </td>"
这样写了,A页面的计算小计和合计的JS怎么写啊?
function sum(){
num = parseFloat(document.getElementById("quantity").value);
mount = parseFloat(document.getElementById("price").value);
amount = mount*num;
document.getElementById("amount").value =amount;
}
这样只能计算第一行的,下面的不计算,怎么来循环?望高手指导菜鸟~
回复
Msxindl_Com 2009-07-11
代码写得太复杂了,看了就头晕.

不要用那么多的response.write来输出HTML代码,这样就会简洁很多,也不容易出错.比如这样写:

<%
'......
if not rs.eof then
i=1
do while not rs.eof
%>
<tr><td width="63" align="center"><%=rs("product_id")%>
<input id="product_id" value="<%=rs("product_id")%>" type="hidden" /></td>
<td width="140" align="center"><%=rs("product_name")%></td>
........
<%
i=i+1
rs.movenext
loop
end if
'....
%>

回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2009-07-11 12:12
社区公告
暂无公告