免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8545 | 回复: 16
打印 上一主题 下一主题

[数据] 用javascript怎样把一个网页中的内容,保存到一个数组中 [复制链接]

爱拼才会赢 该用户已被删除
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-05 17:08 |只看该作者 |倒序浏览
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2005-12-05 17:12 |只看该作者
原帖由 爱拼才会赢 于 2005-12-5 17:08 发表
这个网页返回的内容会像下面:
1,abc
2,fff
3,gdk
……

我怎样才能把这个网页的内容保存到一个javascript的数组呢?
数组的长度为止,可能为空,也可能有20来个这样的数据。

这样做的原因是要用onClic ...


这个你可能需要使用正则表达式来切割了。

如果你可以返回xml,那还好办,可以适用xml的分析
爱拼才会赢 该用户已被删除
3 [报告]
发表于 2005-12-05 18:14 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
4 [报告]
发表于 2005-12-05 18:29 |只看该作者
原帖由 爱拼才会赢 于 2005-12-5 18:14 发表


javascript还可以解析xml吗?
是不是我没说清楚?
只能在客户端执行,用javascript实现。


除非先写在 Cookie 里,否则有难度.因为两页之间没法传不定量的数据吧?

论坛徽章:
0
5 [报告]
发表于 2005-12-06 09:43 |只看该作者
简单,给出点实际的东西,你这样描述我理解起来没个标准
爱拼才会赢 该用户已被删除
6 [报告]
发表于 2005-12-06 12:25 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
7 [报告]
发表于 2005-12-06 13:27 |只看该作者
  1.   在web页面上,我们经常会看到几个相互关联的下拉菜单选择框。当访问者选择第一个下拉选择框中的一个选项后,第二个下拉选择框中的内容就会随之发生变化。对于web开发人员来说,这种情况常常会发生。比如,我们要选择一个地区名称,那么首先要选择省份名称,然后再根据省份名称选择其中的城市名称:

  2.   下面就介绍如何使用javascript脚本实现上述功能。

  3. 实现原理
  4.   上面的功能,实际上就是要实现动态生成页面内容的工作。这需要internet explorer 4.0版本和动态html技术的支持。首先建立一个空的select列表,然后再根据需要,使用合适的option元素填充它。为了避免输入过多的冗余代码,可以分配给选项相应的标识和数值,然后,就可以引用它来完成填充工作。



  5. 相关代码
  6. 注意,dhtml代码仅仅适用于internet explorer 4.0或者以上版本,所以,如果要考虑更多的用户端浏览器类型,请添加另外的判别代码,从而引导用户到其他的页面。

  7. < html >

  8. < head >

  9. < script language="javascript" >

  10. function setcity() {

  11. switch (document.shengshi.sheng.value) {

  12. case ’河北’ :

  13. var labels = new array("石家庄","沧州","唐山");

  14. var values = new array("sjz","cz","ts");

  15. break;

  16. case ’山东’ :

  17. var labels = new array("济南","青岛","烟台");

  18. var values = new array("jn","qd","yt");

  19. break

  20. }

  21. // 清空市列表选择框的内容

  22. document.shengshi.city.options.length = 0;

  23. // 从数组中添加内容

  24. for(var i = 0; i < labels.length; i++) {

  25. document.shengshi.city.add(document.createelement("option"));

  26. document.shengshi.city.options[i].text=labels[i];

  27. document.shengshi.city.options[i].value=values[i];

  28. }

  29. // 选择第一个选项

  30. document.shengshi.city.selectedindex = 0;

  31. }

  32. < /script >

  33. < /head >

  34. < body >

  35. < form name="shengshi" >

  36. 省:

  37. < select name="sheng" onchange="setcity()" >

  38. < option value="河北" >河北< /option >

  39. < option value="山东" selected >山东< /option >

  40. < /select >

  41. 市:

  42. < select name="city" >< /select >

  43. < /form >

  44. < !-- 执行初始化选择列表 -- >

  45. < script language="javascript" >

  46. setcity();

  47. < /script >

  48. < /body >

  49. < /html >
复制代码


不过最好使用Ajax类似技术来实现。
爱拼才会赢 该用户已被删除
8 [报告]
发表于 2005-12-06 18:49 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
9 [报告]
发表于 2005-12-06 21:18 |只看该作者
原帖由 爱拼才会赢 于 2005-12-6 18:49 发表
to HonestQiao:
就是因为选项太多不能这么写。
不然你的每个页面实际存放了3万种产品分类的数据,太大不说。
数据也会很方便的被别人取走。

不过谢谢你这么支持这个帖子!



你这样子看来是必需使用AJAX来做了。

我最近也正在研究这个

论坛徽章:
0
10 [报告]
发表于 2005-12-07 09:15 |只看该作者
这么多的数据量一下子直接拿出来肯定是不行的,网络流量大,脚本执行也慢
只能异步的调用,也就是ajax
而且每次都读出所有的子节点,也不太可取(因为数据量还是太大)
你这种形式的,还是做成combox来的好,用js实现一个combox
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP