如果包含数字字符串,则单击href

时间:2016-08-10 18:37:23

标签: javascript href

如果某个href包含某个子字符串

,则要点击它
var styleCode = "827053-010";
document.querySelector("a[href="+styleCode+"]").click();

当我的变量在开头有字母时工作正常,但在我寻找数字时似乎不起作用

3 个答案:

答案 0 :(得分:1)

attribute equals selector内的引号内换行属性值。

var styleCode = "827053-010";
document.querySelector('a[href="'+styleCode+'"]').click();
//                     here ---^-------------^---

<小时/> 如果您正在寻找attribute contains selector,请将其更改为。

var styleCode = "827053-010";
document.querySelector('a[href*="'+styleCode+'"]').click();
//                         ---^---

答案 1 :(得分:0)

您可以使用*=代替=在网站的任何位置添加匹配项(您还需要引用styleCode):

var styleCode = "827053-010";
document.querySelector("a[href*='"+styleCode+"']").click();

使用querySelector,您可以使用以下任何模式匹配选择器:

*=包含

^=

开头

$=

结尾

var styleCode = "827053-010";
console.log(document.querySelector("a[href*='"+styleCode+"']"));
<a href="https://www.example.com/827053-010/foo">Link with 827053-010</a>

答案 2 :(得分:0)

您需要在引号

中传递变量
document.querySelector("a[href='"+styleCode+"']").click();

JSFIDDLE