200分!!!asp 输出4列。并且每个单元格里有N条数据

wl__0464 2008-11-18 08:58:25
asp 输出4列。并且每个单元格里有N条数据。如图:
...全文
198 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
我建议你ASP和HTML代码分开,就如我写的那样!
  • 打赏
  • 举报
回复
我给你的代码,简单又容易理解
  • 打赏
  • 举报
回复
然后自己设置样式即可
zzxap 2008-11-18
  • 打赏
  • 举报
回复
<div id="recordlist">
<%
Dim iSQL,iRs
'行业
iSQL="SELECT i.title, i.inid FROM hr_industry i INNER JOIN hr_corpinfo c ON i.inid = c.inid INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') GROUP BY i.title, i.inid"
'iSQL="SELECT i.title, i.inid FROM hr_industry i INNER JOIN hr_corpinfo c ON i.inid = c.inid INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') AND p.istag=2 GROUP BY i.title, i.inid"
set iRs=Server.CreateObject("ADODB.Recordset")
iRs.Open iSQL,conn,1,1

If Not iRs.EOF then
do while Not iRs.EOF
Response.Write "<dl>"
Response.Write "<dt>"&iRs("title")&"</dt>"
'行业下的职位
iiSQL="SELECT p.poid, p.job, p.entrydate, c.inid, c.corpname FROM hr_corpinfo c INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') AND c.inid="&iRs("inid")
'iiSQL="SELECT p.poid, p.job, p.entrydate, c.inid, c.corpname FROM hr_corpinfo c INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') AND p.istag=2 AND c.inid="&iRs("inid")
set iiRs=Server.CreateObject("ADODB.Recordset")
iiRs.Open iiSQL,conn,1,1

If Not iiRs.EOF then
Response.Write "<dd>"
do while Not iiRs.EOF
Response.Write "<ul>"
Response.Write "<li><a href='corp/jobs.asp?posid="&iiRs("poid")&"' target='_blank' title='发布者:"&iiRs("corpname")&"'>"&iiRs("job")&"</a></li>"
Response.Write "<li>"&iiRs("entrydate")&"</li>"
Response.Write "</ul>"

iiRs.Movenext
loop
Response.Write "</dd>"
End If
iRs.MoveNext
loop

End If
Response.Write "</dl>"
iRs.Close
set iRs=Nothing%>
</div>

  • 打赏
  • 举报
回复
呵呵,你要用div也行
上面的你把对应的标签改为div ul li即可
  • 打赏
  • 举报
回复
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
td{

border:#000000 solid 1px;}
</style>
</head>

<body>
<table>
<tr><td>
<%for i=1 to 80%>
.<%=i%> chinmo测试多行多列<br />
<%if i>9 and i mod 10 =0 and i mod 40<>0 then%></td><td><%end if%>

<%if i>10 and i mod 10=0 and i mod 40=0 then%></td><tr><td><%end if%>
<%next
%>
</td>
</tr></table>
</body>
</html>

给你看一个简单的例子

你只需要放到你的程序稍微改一下即可
大致如下做修改
<table>
<tr><td>
<%i=0
do while not rs.eof
i=i+1%>
.<%=i%> chinmo测试多行多列<br />
<%if i>9 and i mod 10 =0 and i mod 40<>0 then%></td><td><%end if%>

<%if i>10 and i mod 10=0 and i mod 40=0 then%></td><tr><td><%end if%>
<%rs.movenext
loop
%>
</td>
</tr></table>
layers2323 2008-11-18
  • 打赏
  • 举报
回复
反正lz,一个循环肯定能解决你的问题,只不过根据你的业务的不同可能在分支判断上复杂些。
layers2323 2008-11-18
  • 打赏
  • 举报
回复
12楼的,你里面会缺一个“</tr>”
而且你这样不是一行三列吗?
街头小贩 2008-11-18
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zhuyongzhao 的回复:]
<table width="400" border="0">
<tr>
<%
for i=1 to 21
%>
<td> <%=i%> </td>
<%
if i mod 3=0 then
response.write" </tr> <tr>"
end if
next
%>

</table>
[/Quote]
嵌套循环即可!<div>简单多了!而且少写不少代码,今天上午就遇到过一个
code:

<div id="recordlist">
<%
Dim iSQL,iRs
'行业
iSQL="SELECT i.title, i.inid FROM hr_industry i INNER JOIN hr_corpinfo c ON i.inid = c.inid INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') GROUP BY i.title, i.inid"
'iSQL="SELECT i.title, i.inid FROM hr_industry i INNER JOIN hr_corpinfo c ON i.inid = c.inid INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') AND p.istag=2 GROUP BY i.title, i.inid"
set iRs=Server.CreateObject("ADODB.Recordset")
iRs.Open iSQL,conn,1,1

If Not iRs.EOF then
do while Not iRs.EOF
Response.Write "<dl>"
Response.Write "<dt>"&iRs("title")&"</dt>"
'行业下的职位
iiSQL="SELECT p.poid, p.job, p.entrydate, c.inid, c.corpname FROM hr_corpinfo c INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') AND c.inid="&iRs("inid")
'iiSQL="SELECT p.poid, p.job, p.entrydate, c.inid, c.corpname FROM hr_corpinfo c INNER JOIN hr_positions p ON c.usid = p.usid WHERE (p.jobleveltype = '高级') AND p.istag=2 AND c.inid="&iRs("inid")
set iiRs=Server.CreateObject("ADODB.Recordset")
iiRs.Open iiSQL,conn,1,1

If Not iiRs.EOF then
Response.Write "<dd>"
do while Not iiRs.EOF
Response.Write "<ul>"
Response.Write "<li><a href='corp/jobs.asp?posid="&iiRs("poid")&"' target='_blank' title='发布者:"&iiRs("corpname")&"'>"&iiRs("job")&"</a></li>"
Response.Write "<li>"&iiRs("entrydate")&"</li>"
Response.Write "</ul>"

iiRs.Movenext
loop
Response.Write "</dd>"
End If
iRs.MoveNext
loop

End If
Response.Write "</dl>"
iRs.Close
set iRs=Nothing%>
</div>

css:


#recordlist{float:left;width:670px;height:auto;}
#recordlist dl{float:left;margin:0;padding-top:10px;padding-right:5px;width:330px;height:auto;}
#recordlist dl dt,#recordlist dl dd{float:left;margin:0;padding:0;width:330px;height:auto;}
#recordlist dl dt{padding-left:5px;width:325px;border:1px dashed #ddd;}
#recordlist dl dd ul{float:left;margin:0;padding:0;width:330px;height:auto;}
#recordlist dl dd ul li{float:left;margin:0;padding:0;width:165px;height:auto;list-style:none;}
zhuyongzhao 2008-11-18
  • 打赏
  • 举报
回复
<table width="400" border="0">
<tr>
<%
for i=1 to 21
%>
<td><%=i%></td>
<%
if i mod 3=0 then
response.write"</tr><tr>"
end if
next
%>

</table>
Lee2K 2008-11-18
  • 打赏
  • 举报
回复
这是HTML的问题,asp无法列出什么4列的,每个单元格有N条数据,那么,设置两个循环体,一个循环表格的td数量,一个循环你的数据,但数据又必须每个表格内的数据数量一样.

所以,我想,上面那表格,应该为多次打开数据库,那么就好办了,只需要一个循环体.
dsq580 2008-11-18
  • 打赏
  • 举报
回复
你发的图仅限于新浪博客用户交流,呵呵!防盗链了!
wl__0464 2008-11-18
  • 打赏
  • 举报
回复
恩 ,,就是 select id,题目,from news
然后用我发图片的样式输出。谢谢
  • 打赏
  • 举报
回复
呵呵,不分类类别的,也可以整,就是麻烦一点
就是这些数据是没有任何管理的是吧?
wl__0464 2008-11-18
  • 打赏
  • 举报
回复
还又就是不分类别的。
wl__0464 2008-11-18
  • 打赏
  • 举报
回复
我想作的是从一个表中 打印出我图片的样式。
sy_binbin 2008-11-18
  • 打赏
  • 举报
回复
你那个4列是新闻的大类吧

按照大类先循环,你可以查查N行N列的代码,网上很多

然后再在里面按照大类的编号循环新闻信息就可以了
  • 打赏
  • 举报
回复
你说的还不是很清楚

都是一个表

那么你这些布局有什么关联呢?

就是说你这些数据之间是什么关系
wl__0464 2008-11-18
  • 打赏
  • 举报
回复

单元格里我想打印10条数据啊

并且每个单元格里的数据是一条SQL语句
cao_love 2008-11-18
  • 打赏
  • 举报
回复
给你个提示:循环打印出4个<td>在每次循环<td>后把记录指针向下移一次,会用到嵌套循环。
如果有什么地方有疑问的可以加我的QQ:408015911
加载更多回复(1)

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧