jQuery获取table表中的td标签
首先我来介绍一下我遇到的问题
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="#" 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="#" 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获取table中行id和td值
<%@ page language="java" pageEncoding="UTF-8"%> <% String path = reques ...
- php实例源码之获取mysql表中所有行和列
本文章向大家介绍php获取mysql表中所有行和列的源码,主要使用到mysql_num_rows和mysql_fetch_row等php的数据库操作函数,该实例有助于大家熟悉PHP mysql数据库编 ...
- 获取Excel表中各个Sheet的方法
获取Excel表中各个Sheet的方法 private void simpleButton2_Click(object sender, EventArgs e) { OfdBOM.Filter = & ...
- jQuery获取CSS样式中的颜色值的问题
转自:http://blog.csdn.net/cwj649956781/article/details/23261529 jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法,需 ...
- python xlrd 模块(获取Excel表中数据)
python xlrd 模块(获取Excel表中数据) 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了pyt ...
- jquery获取json对象中的key小技巧
jquery获取json对象中的key小技巧 比如有一个json var json = {"name" : "Tom", "age" : 1 ...
- 从Table 表中取出第 m 条到第 n 条的记录
* FROM Table id FROM Table )) --从TABLE表中取出第m到n条记录 (Exists版本) * FROM TABLE AS a WHERE Not Exists ( * ...
- 获取一个表中的字段总数(mysql) Navicat如何导出Excel格式表结构 获取某个库中的一个表中的所有字段和数据类型
如何获取一个表中的字段总数 1.function show columns from 表明: 结果 : 2.functiuon select count(*) from INFORMATION_SCH ...
- Jquery 获取table中的td元素的值
<table id="t1"> <tr> <td> 1-1 </td> <td> 1-2 </td> < ...
随机推荐
- .db轻量级本地数据库
1.概述: db文件一般是数据库数据存放文件. db是datebase的缩写,是数据库文件. 我们可以简单的理解为db是本地轻量级数据库(用了缓存,储存少量本地数据,防止断电等突发意外的发生对我们的程 ...
- springboot项目部署运行(后台);端口被占用;
打包: mvn clean package -Pprod -Dmaven.test.skip=true -Pprod 使用生产环境配置: -DskipTests,不执行测试用例,但编译测试用例类生成相 ...
- 入参为json类型的接口测试示例
一.接口文档内容 二.使用postman(入参为json类型) 如下部分内容即是json串: { "name":"刘星", "grade": ...
- Qt 学习之路 2(58):编辑数据库外键
Qt 学习之路 2(58):编辑数据库外键(skip) 豆子 2013年7月12日 Qt 学习之路 2 13条评论 前面几章我们介绍了如何对数据库进行操作以及如何使用图形界面展示数据库数据.本章我们将 ...
- [洛谷 P4612][COCI 2011-2012#7] Setnja
传送门 TM :setnja (1S256M) 一个人要散步去会见他的 N 个朋友(按给定的顺序会见).我们可以理解成他们都住在一个 很大的网格内,每个朋友住其中的一个单元格,所有人每一步都可以走到相 ...
- gym101964G Matrix Queries seerc2018k题 cdq分治
题目传送门 题目大意: 二维平面上有q次操作,每次操作可以是添加一个点,也可以是添加一个矩形,问每次操作后,有多少 点-矩形 这样的pair,pair的条件是点被矩形覆盖(边缘覆盖也算). 思路: ...
- SPOJ - REPEATS RMQ循环节
题意:求重复次数最多的重复子串(并非长度最长) 枚举循环子串长度\(L\),求最多能连续出现多少次,相邻的节点往后的判断可以使用\(LCP\)得到值为\(K\),那么得到一个可能的解就是\(K/L+1 ...
- LightOJ - 1197 素数筛
深夜无事可干啊 #include<bits/stdc++.h> using namespace std; const int maxn = 1e6+11; typedef long lon ...
- Dojo2 前端框架基本操作
安裝CLI,需要先有npm: npm install -g @dojo/cli npm install -g @dojo/cli-create-app 创建项目目录,-n 后面是名字,创建完成后会自动 ...
- 在Eclipse中调试web项目
由于现在的公司用的是Eclipse开发web项目而且不安装MyEclipse插件,没有myclipse插件就不能在Eclipse中配置web服务器,所以也就不好对web项目进行调试.下面的方法就可以让 ...