js动态创建元素之一--document.write

以我曾经写过的例子举例

如上图,乡镇街道的名字和数目是根据数据库的数据获取的,有几个乡镇,就会显示出来几个,这就要求动态获取乡镇名称和数目,以下代码中用到了document.write创建动态页面,在利用document.write时,注意转义字符\的运用,要不然容易报错

<script language="JavaScript"type="text/javascript">
var uid=getQueryString("userId");//获取用户链接id
var str=xz_xmsl(uid);//获取乡镇名字和数量的函数  

var res=str.split('&');
document.write("<table style='margin:0 auto; margin-top:15px' width='920' border='0' cellspacing='0'>");
document.write("<caption align='left'>乡镇街道</caption>");
for (var i=1;i<=res.length;i++)
{

if((i%6)==1)  //当乡镇数目余1时开始创建列表
document.write("<tr>");

document.write("<td width='250' valign='top'>");
document.write("<ul class='left_li'>");
document.write("<li class='ico5' onClick=\"gotopage1(\'\',\'项目查询\',\'"+res[i-1].split(',')[0]+"\',\'\')\">");//gotopage1是获取链接地址的函数,点击某个乡镇,就会跳转到这个乡镇的具体信息
document.write("<div class='title'>"+res[i-1].split(',')[0]+ "</div>");
document.write("<div>"+res[i-1].split(',')[1]+ "</div>");
document.write("</ii>");
document.write("</ul>");
document.write("</td>");
if((i%6)==0||i==res.length) //当项目数量余数0时或者等于总长时,开始换行
document.write("</tr>");
}
document.write("</table>");
</script>

函数xz_xmsl获取乡镇名称和数量

function xz_xmsl(USERID){
var USER_ID=USERID;
var str;
var inputValue=str+'|'+USER_ID;
var link=window.location.href.split('/');
var strUrl="http://"+link[2]+"/oa/extensions/PageEngine/StoredProcedureEngine.aspx?P_Name=TDZZ.PRO_TDZZ_XZ_XMSL&KeyValue="+inputValue+"&rand="+Math.random();//调用了存储过程TDZZ.PRO_TDZZ_XZ_XMSL
str=GetXmlHttp(strUrl,"");
return str;
}

create or replace procedure PRO_TDZZ_XZ_XMSL(str out VARCHAR2 , USER_ID in VARCHAR2
                                            ) is
         strresult VARCHAR2(2000);
    --bmdm varchar2(20);
begin
strresult:='';
for n in (select t.xz,count(1) as cou
from v_subxmcx_list t where substr(t.xzq_dm,0,4)='3302' and t.userid=USER_ID  and t.xz is not null  and t.xmzt!='3'

group by t.xz ) loop
strresult:=strresult||'&'||n.xz||','||n.cou;
end loop;
if strresult is not null then
         str:=substr(strresult,2);
end if;
EXCEPTION
    WHEN OTHERS THEN
        RAISE;
        ROLLBACK;
end PRO_TDZZ_XZ_XMSL;

猜你喜欢

转载自www.cnblogs.com/huodige/p/8962846.html