jQuery获取table表中的td标签(实例讲解)


Posted in jQuery onJuly 28, 2017

首先我来介绍一下我遇到的问题

1.当有一个table表包含了<tr>标签,<td>标签,大致可以认为是这样的:

<tr>
    <td>
      @scene.ID
    </td>
    <td>
      @scene.SceneName
    </td>
    <td>
      @scene.QRUrl
    </td>
    <td>
      @scene.LocalUrl
    </td>
    <td>
      <!--如果有图片,展示图片,没有图片生成图片-->
      <!--判断localUrl(本地服务器路径)是否为空,如果为空,表示没有生成,如果不为空表示已经生成-->
      @if (!string.IsNullOrWhiteSpace(scene.LocalUrl))
      {
        <!--图片不为空,展示图片地址-->
        <img src="@scene.LocalUrl" style="width:200px; height:100px"/>
      }
      else
      {
        <!--图片为空,生成图片-->
        <a sceneid="@scene.ID" href="#" rel="external nofollow" rel="external nofollow" onclick="build(this);">生成</a>
      }
    </td>
</tr>

2.这里有一个onclick事件,我要做的就是点击“生成”链接,要找到QRUrl的<td>标签和LocalUrl的<td>标签

首先我们点击这个a标签,执行jQuery中的点击事件

function build(sender){ var jqSender = $(sender); + +} 这里把js对象通过 $()转变成了jquery对象,下面的内容放在两个“+”之间。

var sceneid = jqSender.attr('sceneid'); //attr可以找到对象的属性的值,这里我们找到了sceneid这个属性的值

我需要拿到td标签,首先我应该知道是在哪一行,这跟定位是一样的。比如:在北京有一条南京路1号,在成都也有一条南京路1号,你问我在哪儿,我告诉你我在南京路1号,你能确定我是在北京还是成都吗,所以我们应该要定位,说我们在成都的南京路1号。

这里最好也要用eq()来获取某一行,如果页面代码需要修改,这会很麻烦。比如你要记我家在哪里,你需要知道的是街道、门牌号,你只知道是这条街第一座房子是我家,万一别人在这新增了一座房子,那就不是第一家了(比喻有点不恰当,但是计算机就是这么死板)。

所以,我们给这个tr设一个id,给QRUrl和LocalUrl设一个class,代码如下:

<tr sceneid="@scene.ID">
    <td>
      @scene.ID
    </td>
    <td>
      @scene.SceneName
    </td>
    <td class="wxurl-col">
      @scene.QRUrl
    </td>
    <td class="localurl-col">
      @scene.LocalUrl
    </td>
    <td>
      <!--如果有图片,展示图片,没有图片生成图片-->
      <!--判断localUrl(本地服务器路径)是否为空,如果为空,表示没有生成,如果不为空表示已经生成-->
      @if (!string.IsNullOrWhiteSpace(scene.LocalUrl))
      {
        <!--图片不为空,展示图片地址-->
        <img src="@scene.LocalUrl" style="width:200px; height:100px"/>
      }
      else
      {
        <!--图片为空,生成图片-->
        <a sceneid="@scene.ID" href="#" rel="external nofollow" rel="external nofollow" onclick="build(this);">生成</a>
      }
    </td>
  </tr>

那在jQuery里面就可以这样去找:

<script type="text/javascript">
  function build(sender) {
    var jqSender = $(sender);
    var sceneid = jqSender.attr('sceneid');

    //找到指定行类名为wxurl-col的td标签
    $('tbody tr[sceneid=' + sceneid + '] td.wxurl-col')

    //找到指定行类名为localurl-col的td标签
    $('tbody tr[sceneid=' + sceneid + '] td.localurl-col')

    //找到点击事件的a标签
    jqSender

}
</script>

td标签只是找出来了,并没有使用。

方法就是这样,给元素加“坐标”,为什么分别是id和类名,首先有很多行,要唯一确定只有加id,当行确定了,那列就可以是id也可以是class,建议用class,便于我们css的管理

注:此篇随笔只供参考使用,而且也有很多小瑕疵,最主要的不是代码,逻辑才是最重要的。

以上这篇jQuery获取table表中的td标签(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jquery仿微信聊天界面
May 06 jQuery
jQuery实现在HTML文档加载完毕后自动执行某个事件的方法
May 08 jQuery
jQuery.ajax向后台传递数组问题的解决方法
May 12 jQuery
jquery实现简单实用的轮播器
May 23 jQuery
jquery.masonry瀑布流效果
May 25 jQuery
jQuery实现火车票买票城市选择切换功能
Sep 15 jQuery
jquery 给动态生成的标签绑定事件的几种方法总结
Feb 24 jQuery
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
Mar 28 jQuery
通过jquery toggleClass()属性制作文章段落更改背景颜色
May 21 jQuery
jQuery实现的五星点评功能【案例】
Feb 18 jQuery
jQuery模仿ToDoList实现简单的待办事项列表
Dec 30 jQuery
如何使用jQuery操作Cookies方法解析
Sep 08 jQuery
vue单页应用中如何使用jquery的方法示例
Jul 27 #jQuery
jQuery实现键盘回车搜索功能
Jul 25 #jQuery
基于jquery实现多级菜单效果
Jul 25 #jQuery
jQuery实现拼图小游戏(实例讲解)
Jul 24 #jQuery
jquery实现下拉菜单的手风琴效果
Jul 23 #jQuery
jQuery.Ajax()的data参数类型详解
Jul 23 #jQuery
JavaScript之事件委托实例(附原生js和jQuery代码)
Jul 22 #jQuery
You might like
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
2019/04/02 PHP
php求斐波那契数的两种实现方式【递归与递推】
2019/09/09 PHP
javascript 动态调整图片尺寸实现代码
2009/12/28 Javascript
如何阻止复制剪切和粘贴事件为了表单内容的安全
2013/05/23 Javascript
js 三级关联菜单效果实例
2013/08/13 Javascript
Jquery幻灯片特效代码分享--打开页面随机选择切换方式(3)
2015/08/15 Javascript
jQuery下拉友情链接美化效果代码分享
2015/08/26 Javascript
Vue系列:通过vue-router如何传递参数示例
2017/01/16 Javascript
简单实现js悬浮导航效果
2017/02/05 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
jQuery EasyUI Layout实现tabs标签的实例
2017/09/26 jQuery
让网站自动生成章节目录索引的多个js代码
2018/01/07 Javascript
通过vue-router懒加载解决首次加载时资源过多导致的速度缓慢问题
2018/04/08 Javascript
解决vue中修改了数据但视图无法更新的情况
2018/08/27 Javascript
小程序数据通信方法大全(推荐)
2019/04/15 Javascript
彻底揭秘keep-alive原理(小结)
2019/05/05 Javascript
vue中npm包全局安装和局部安装过程
2019/09/03 Javascript
layer实现弹出层自动调节位置
2019/09/05 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
2020/04/30 jQuery
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
简单理解Python中基于生成器的状态机
2015/04/13 Python
python实现多线程的两种方式
2016/05/22 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
python实现比较类的两个instance(对象)是否相等的方法分析
2019/06/26 Python
Python使用numpy模块实现矩阵和列表的连接操作方法
2019/06/26 Python
Django Rest framework频率原理与限制
2019/07/26 Python
Pycharm 安装 idea VIM插件的图文教程详解
2020/02/21 Python
Python利用for循环打印星号三角形的案例
2020/04/12 Python
Django生成数据库及添加用户报错解决方案
2020/10/09 Python
Python实现自动整理文件的脚本
2020/12/17 Python
软件测试常见笔试题
2012/02/04 面试题
自我鉴定三原则
2014/01/13 职场文书
化妆师职业生涯规划书
2014/02/16 职场文书
公司合作协议书范本
2014/04/18 职场文书
CSS font-variation 可变字体的魅力(实例详解)
2022/03/03 HTML / CSS