遍历表单数据,检查其中任意一项的方法(Get Matching Xpath Count指令的用法)

如上图,每次新增数据均显示在最上面,且这个表格没有自定义查询的功能。
这给校验添加数据是否成功增加了难度(常规方式是检查第一行数据)
本次案例的逻辑是
使用Get Matching Xpath Count指令
先获取列表内一共有多少条数据,获得数量后把数量传递到需要定位的元素路径内
比如,获得列表内有${value}=3条数据,每条数据名称的xpath=//*[@id="dataList"]/tr[X]/td/span/b
注意红色的X,后面将把获取的数量传进X内,使其最终定位到指定的元素上。

具体脚本如下:

可以看到,该脚本的逻辑是:
1、通过获取id=dataList下tr的个数,得出列表内有多少条数据${value}
2、通过分析元素xpath值,第二条数据的xpath值xpath=//*[@id="dataList"]/tr[2]/td/span/b,如此可以知道,每一条数据的差别主要是tr后的数值
3、构建带参数的xpath=//*[@id="dataList"]/tr[${value}]/td/span/b为任意条数据的名称元素路径,${value}值传递进xpath即可定位到某一条指定的xpath
如果能定位到列表内指定的数据,其他操作就很容易实现了,比如检查名称,该项数据其他处理等等
参考

遍历表单数据,检查其中任意一项的方法(Get Matching Xpath Count指令的用法)的更多相关文章
- js如何遍历表单所有控件
js如何遍历表单所有控件 一.总结 一句话总结: 1.获取form表单里面的的所有元素:通过formelement.elements,这里form元素通过name属性直接定位 var fele=for ...
- element-ui做表单验证 v-for遍历表单 自动生成校验规则 pc移动双适配
整体思路: 1:利用element-ui的栅格实现小分辨率和大分辨率的适配 2:模拟一组数据,从中筛选出 绑定各个表单值的对象 以及生成验证规则对象 3:在script标签内 .data()外,自 ...
- JavaScript遍历表单元素
运行效果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta char ...
- Jquery 遍历表单 AJAX提交
function test(){ var arrayObj = new Array(); $("#contentTable tbody tr").each(function(){ ...
- 重置按钮小tip—为何不能重置表单数据呢
刚开始学html的同志有时候可能会遇到一个问题,就是为什么在编辑页面里面的重置按钮总是不起作用呢不清空数据呢?接下来就说明一下原因. Reset 对象 Reset 对象代表 HTML 表单中的一个重置 ...
- struts2自动接收表单数据
提交页面主要代码: <form method="post" action="messageAction"> <input type=&qu ...
- Angular 1 深度解析:脏数据检查与 angular 性能优化
TL;DR 脏检查是一种模型到视图的数据映射机制,由 $apply 或 $digest 触发. 脏检查的范围是整个页面,不受区域或组件划分影响 使用尽量简单的绑定表达式提升脏检查执行速度 尽量减少页面 ...
- SQL Server遍历表的几种方法
在数据库开发过程中,我们经常会碰到要遍历数据表的情形,一提到遍历表,我们第一印象可能就想到使用游标,使用游标虽然直观易懂,但是它不符合面向集合操作的原则,而且性能也比面向集合低.当然,从面向集合操作的 ...
- ASP.NET MVC 网站开发总结(五)——Ajax异步提交表单之检查验证码
首先提出一个问题:在做网站开发的时候,用到了验证码来防止恶意提交表单,那么要如何实现当验证码错误时,只是刷新一下验证码,而其它填写的信息不改变? 先说一下为什么有这个需求:以提交注册信息页面为例,一般 ...
- SQL Server遍历表的几种方法 转载
SQL Server遍历表的几种方法 阅读目录 使用游标 使用表变量 使用临时表 在数据库开发过程中,我们经常会碰到要遍历数据表的情形,一提到遍历表,我们第一印象可能就想到使用游标,使用游标虽然直观易 ...
随机推荐
- C#使用yield关键字提升迭代性能与效率
前言 yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,减少了内存占用,并允许在迭代时执行复杂逻辑. 传统迭代和yield迭代方式对比 咱们来看看传统迭代方式和yie ...
- gitblit 安装
github 私有代码库收费属于正常商业操作,毕竟现在鼓励开源,但是受到美国出口管制,这就有些不妙了. 所以有必要自己搭建一个私有的托管服务,经过比较并且,选择了gitblit(因为最近偶尔搞搞jav ...
- Oracle数据库只能127.0.0.1连接,无法局域网远程通过IP访问
今天使用Oracle时遇到一个问题,连接字符串中IP配置成127.0.0.1时可能正常访问数据库,当配置成实际IP地址时连接数据库失败.然后 telnet IP 1521 失败. 解决方案: 1. 打 ...
- Git 忽略文件配置全解析
Git 忽略文件配置全解析 在Git版本控制系统中,.gitignore文件扮演着至关重要的角色.它允许我们指定哪些文件或目录应该被Git忽略,即不被纳入版本控制之中.这对于避免提交敏感信息.构建产物 ...
- vim技巧:设置编码格式,批量注释(待续其他功能)
navicate导出的sql由于是win平台所有模式都是dos所以上传到服务器需要更改模式类型为unix :set ff 查看当前文本的模式类型,一般为dos,unixdos 代表windows转出类 ...
- Java中int、Integer、long、Long、double、Double和BigInteger的关系
Java中int.Integer.long.Long.double.Double和BigInteger的关系 在Java中,int.Integer.long.Long.double.Double和Bi ...
- pycharm上传github问题:rejected
我从pycharm上传项目时,遇到的问题: 以下是一些解决思路: 这个错误提示表明,你在尝试将本地代码推送到远程仓库时,远程仓库中已经包含了你本地尚未获取的更改.换句话说,远程仓库的代码比你的本地代码 ...
- [luogu4114] Qtree1 题解
\(LCT\) 动态维护树上路径最值,典中典了. 时间复杂度 \(O(n\log n)\). #include<bits/stdc++.h> #define fa(x) lct[x].fa ...
- 微信小程序之java服务端获取openid
微信小程序越来越热,最近团队写了一个小程序,这篇博客我将讲一下怎么通过java服务端获取到用户的openid. api文档的授权登陆地址: http://developers.weixin.qq.co ...
- mysql 无数据插入,有数据更新
mysql的语法与sql server有很多不同,sql server执行插入更新时可以update后使用if判断返回的@@rowcount值,然后确定是否插入,mysql在语句中无法使用类似sql ...