CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  JavaScript

弄糊涂了的问题

楼主henyzhang(小章)2006-03-03 17:01:30 在 Web 开发 / JavaScript 提问

function   viewGrid(form)  
  {  
      var   str="";  
      if   (form.cb!=null)  
      {  
          if   (form.cb.length   !=   null)  
          {  
              for   (var   i=0;i<form.cb.length;i++)  
  if   (form.cb[i].checked)  
  {  
      if   (str   !=   "")   str   +=   ",";  
      str   +=   form.cb[i].value;  
  }  
          }  
          else  
              if   (form.cb.checked)   str=form.cb.value;  
  if   (str!="")   window.open("aaa.asp?jid="+str);  
              else   alert('请先选中要显示的岗位!');  
      }  
  }  
   
  这么一个遍历表格的js函数,用于判断每行前面的复选框是否被选中,然后提取一个值列表  
   
  下面两种调用方法:  
  1、<a   href="javascript:viewGrid(this.form);"><img   src="aa.jpg"   border="0"></a>  
  单击这个图片时,提示“cb为空或不是对象”  
   
  2、<input   type="button"   onclick="javascript:viewGrid(this.form);">  
  正确执行  
   
  哪位大哥给解释一下,我需要用到第一种方法。 问题点数:50、回复次数:4Top

1 楼hbhbhbhbhb1021(天外水火(我要多努力))回复于 2006-03-03 17:15:55 得分 10

、<a   href="javascript:viewGrid(document.getElementById("表单的name"));"><img   src="aa.jpg"   border="0"></a>Top

2 楼zhaoxiaoyang(梅雪香@深圳)回复于 2006-03-03 19:49:51 得分 10

<a   href="#"   onclick="javascript:viewGrid(this.form);"><img   src="aa.jpg"   border="0"></a>Top

3 楼shenjf2000(一路走来)回复于 2006-03-03 20:13:28 得分 20

两者区别在于this引用的对象不同对于第一种方法,this引用的window对象,而对于第二种引用的是这个button按钮。  
  2、<input   type="button"   onclick="javascript:viewGrid(this.form);"   name=button1>  
  这里this就表示button1对象本身。而this.form就表示button对象所在的form对象,因此Javascript运行正常。  
  1、<a   href="javascript:viewGrid(this.form);"><img   src="aa.jpg"   border="0"></a>  
  这里this表示window对象,因此如果你要引用文档中form对象,应该使用this.document.formname  
  注意这里是formname而上面直接this.form就可以了。当然使用二楼的document.getElementById("表单的name")也可以,这也是正确因为form对象的方式,实际上他的方式等于this.document.getElementById("表单的name")或者window.document.getElementById("表单的name")Top

4 楼DeluxWorld(曾经的你)回复于 2006-03-03 20:17:32 得分 10

把表单对象取到就可以了,随便什么方法:  
  <a   href="javascript:viewGrid(document.forms['frm']);"><img   src="aa.jpg"   border="0"></a>  
  Top

相关问题

  • ============我被弄糊涂了=============
  • 一个简单问题把我弄糊涂了,关于海伦公式
  • 网桥到底是连接怎样的网络的呀,把我弄糊涂了!!!
  • 做java半年,却被一个继承的问题弄糊涂了,请大家帮帮忙
  • 请学过离散数学的朋友进来,请教几个有关数理逻辑的基本问题,我完全被弄糊涂了,
  • 乱了,乱了!!!!!
  • 涨了涨了
  • 受不了了
  • 来了,来了~~~~~~~~
  • 受不了了----------------

关键词

  • document
  • 对象
  • 引用
  • getelementbyid
  • cb
  • 方法
  • 表示
  • form
  • button
  • 表单的name

得分解答快速导航

  • 帖主:henyzhang
  • hbhbhbhbhb1021
  • zhaoxiaoyang
  • shenjf2000
  • DeluxWorld

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo