请教,如何模糊找出含有关键字的 id 元素集合?(不使用 JQ 的话)

2021-01-19 20:05:58 +08:00
 qazwsxkevin
var sometable = document.getElementById('Datatbl');
var alltds = sometable.getElementsByTagName('td');

for (var i = 0; i<alltds.length;i++){
   if (alltds[i] ==??????) {// 这里如何判断有无含有"showtd"关键字的 id?
   tdidstr = xxxx; //获得这个完整的 id 的名字
   alltds[i].onmouseover = function () {   //鼠标移动上事件
   xx = 目标 td;
   if (xx.style.fontWeight != "bolder") {
    xx.style.fontWeight = "bolder";
    xx.style.outline = "#ff0e05 inset thick";
    }
    //略
   }
}

实际上最终效果打算是这样实现目的:
1.如果 td 格子的 id 含有 showtd 关键字,那么必定是 id=Ashowtd1 或者 Bshowtd1
2.若找到 Ashowtd1,把 A 替换成 B,成为 Bshowtd1,反过来也是
3.对 Bshowtd1 的 td 格子设置 CSS 样式
4.不是所有 td 都有 id 属性

一张表上面,有两个格子 A/B 是有关系的,落到 A 上,B 高亮,反过来也是

请教思路是否正确,和判断模糊字的方式方法,因条件所限,无法正常使用 Jquery...
谢谢解答!!!

465 次点击
所在节点    JavaScript
2 条回复
rodrick
2021-01-19 20:33:27 +08:00
直接 alltds[i].id.indexOf("showtd") 不行么
rodrick
2021-01-19 20:36:28 +08:00
@rodrick document.querySelectorAll("div[id*=showtd]") 也差不多?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/746428

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX