📄 713552.xml
字号:
<?xml version='1.0' encoding='GB2312'?>
<?xml-stylesheet type='text/xsl' href='../csdn.xsl'?>
<Topic>
<Issue>
<PostUserNickName>gakiki</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>100</credit>
<TopicId>713552</TopicId>
<TopicName>如何将jsp中的多维数组传给javascript.</TopicName>
<PostUserId>250600</PostUserId>
<PostUserName>gakiki</PostUserName>
<RoomName>JSP</RoomName>
<ReplyNum>7</ReplyNum>
<PostDateTime>2002-5-11 11:17:13</PostDateTime>
<Point>100</Point>
<ReadNum>0</ReadNum>
<RoomId>28</RoomId>
<EndState>2</EndState>
<Content>在jsp页面中动态生成一个三维数组:从数据库中取得的城市代码->区县代码->小区代码,然后将之传给javascript的函数以实现一个三级连选的功能,类似于www.pconline.com.cn上的“报价搜索系统”,区别是他上面的数据是写死的,而我的数据需要从jsp中传过去。
谢谢.
</Content>
</Issue>
<Replys>
<Reply>
<PostUserNickName>小满</PostUserNickName>
<rank>二级(初级)</rank>
<ranknum>user2</ranknum>
<credit>100</credit>
<ReplyID>4668384</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>246080</PostUserId>
<PostUserName>js_ning_cn</PostUserName>
<Point>10</Point>
<Content>将返回的数据三维数组每一维,加入到一个select 列表中,或其他表单中,
再你选择的时候,使用javascript 来处理选择的结果,同样可以得到数据的
不过是麻烦了一点
试试看</Content>
<PostDateTime>2002-5-11 12:19:52</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>weidegong</PostUserNickName>
<rank>两星(中级)</rank>
<ranknum>star2</ranknum>
<credit>118</credit>
<ReplyID>4671710</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>128268</PostUserId>
<PostUserName>weidegong</PostUserName>
<Point>90</Point>
<Content>用XML吧
<script language="javascript">
var xmlID = "xmlcmbtree";
var cmbPrefix = "xmlcmb";
var nMaxLevel = 3;
var tblName = "tbl";
function CreateList(nLevel)
{
  var doc = document.all(xmlID).documentElement;
  var nodes, nIndex, node;
  nodes = doc.childNodes;
  for (var i=1; i < nLevel;i++)
  {
nIndex = document.all(cmbPrefix + i).selectedIndex;
node = nodes[nIndex];
nodes = node.childNodes;
  }  
  var cmb = document.all(cmbPrefix + nLevel);
  if (!cmb)
  {
    cmb = document.createElement("SELECT");
    cmb.id = cmbPrefix + nLevel;
    cmb.onchange = new Function("ChangeSelection(" + nLevel + ")");
  //document.body.appendChild(cmb);
    var cell = document.all(tblName).rows[1].insertCell();
    cell.appendChild(cmb);
    
    cell = document.all(tblName).rows[0].insertCell();
    var label = document.createElement("SPAN");
    label.style.fontWeight = "bold";
    label.style.color = "red";
    label.innerHTML = nodes[0].nodeName + ":";
    cell.appendChild(label);
  // document.body.insertBefore(label,cmb)
  }  
  cmb.options.length = 0;
  
  for (i=0; i < nodes.length;i++)
  {
var opt = new Option(nodes[i].getAttribute("text"),nodes[i].getAttribute("value"));
cmb.options.add(opt);
  }
  ChangeSelection(nLevel);
}
function ChangeSelection(nLevel)
{
  if (nLevel < nMaxLevel)
  CreateList(nLevel+1);
}
</script>
<body onload="CreateList(1);">
<!-- 用JSP生成就可以了 !-->
<xml id="xmlcmbtree">
<country>
<province text="Jiang Su" value="Jiang Su">
  <city text="Nan Jing" value="Nan Jing">
	<street text="Xin Jie Kou" value="Xin Jie Kou" />
	<street text="Dong Jia Xiang" value="Dong Jia Xiang" />
  </city>
  <city text="Su Zhou" value="Su Zhou">
	<street text="Guan Qian Jie" value="Guan Qian Jie" />
	<street text="Re Min Lu" value="Re Min Lu" />
  </city>
</province>
<province text="Beijing" value="Beijing">
  <city text="Beijing" value="Beijing">
	<street text="Xin Jie Kou" value="Xin Jie Kou" />
	<street text="Si Huan Lu" value="Si Huan Lu" />
	<street text="Xue Yuan Lu" value="Xue Yuan Lu" />
  </city>
</province>
<province text="Hei Bei" value="Hei Bei">
  <city text="Shi Jia Zhuang" value="Shi Jia Zhuang">
	<street text="Ren Min Lu" value="Ren Min Lu" />
  </city>
</province>
</country>
</xml>
<table id="tbl" border="1" cellspacing="0" cellpadding="0"">
<tr></tr>
<tr></tr>
</table>
</body></Content>
<PostDateTime>2002-5-11 15:52:13</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>gakiki</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>100</credit>
<ReplyID>4674603</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>250600</PostUserId>
<PostUserName>gakiki</PostUserName>
<Point>0</Point>
<Content>谢谢weidegong(weidegong),这就是所谓的xml数据岛吧。
还有个问题,如果这些xml记录的来源是一个jsp的io流,或是一个普通的string对象,或是一个resultset,那在<xml id="xmlcmbtree"> 这里应该怎么写呢。有关这类的语法,资料哪里有啊。
还有个重点:如何给分啊,可怜今天我刚注册得的200¥,都贡献出来了。</Content>
<PostDateTime>2002-5-11 19:06:25</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>weidegong</PostUserNickName>
<rank>两星(中级)</rank>
<ranknum>star2</ranknum>
<credit>118</credit>
<ReplyID>4674728</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>128268</PostUserId>
<PostUserName>weidegong</PostUserName>
<Point>0</Point>
<Content>http://www.5xsoft.com/data/200110/1010242101.htm
帖子后边有个管理</Content>
<PostDateTime>2002-5-11 19:18:32</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>gakiki</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>100</credit>
<ReplyID>4698837</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>250600</PostUserId>
<PostUserName>gakiki</PostUserName>
<Point>0</Point>
<Content>恭喜恭喜,weidegong你赚了190块。</Content>
<PostDateTime>2002-5-13 18:59:17</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>weidegong</PostUserNickName>
<rank>两星(中级)</rank>
<ranknum>star2</ranknum>
<credit>118</credit>
<ReplyID>4703651</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>128268</PostUserId>
<PostUserName>weidegong</PostUserName>
<Point>0</Point>
<Content>多谢多谢
我说这两天没回答问题,怎么分数还在长</Content>
<PostDateTime>2002-5-14 9:58:38</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>weidegong</PostUserNickName>
<rank>两星(中级)</rank>
<ranknum>star2</ranknum>
<credit>118</credit>
<ReplyID>4703724</ReplyID>
<TopicID>713552</TopicID>
<PostUserId>128268</PostUserId>
<PostUserName>weidegong</PostUserName>
<Point>0</Point>
<Content>只是有些奇怪,高手们都去哪儿了?大家都去学习了吗?</Content>
<PostDateTime>2002-5-14 10:01:54</PostDateTime>
</Reply>
</Replys>
</Topic>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -