簡體   English   中英

如何檢查元素名稱是否包含給定的字符串

[英]How to check if element name contains the given string

在下面的代碼中,我正在檢查這兩個元素是否存在。

const var1 = form.elements[elemName1] ||
          form.elements[elemName2]

if(var1){
  doSmth
}

但我需要的是檢查元素的名稱是否包含某個字符串。 喜歡:

const var1 = form.elements[NameContains(givenString)] ||
          form.elements[NameContains(givenString)]

我試圖在 google bud 中找到所需的語法沒有成功。

您可以將屬性包含選擇器( *= ) 與querySelector (查找第一個)或querySelectorAll (獲取匹配列表)一起使用。

例如:

const var1 = form.querySelector("[name*=foo]");

form查找name屬性包含子字符串foo的第一個元素。 類似地, ^=表示“開始於”,而$=表示“結束於”。

如果您要檢查兩個不同的子字符串,請使用選擇器組:

const var1 = form.querySelector("[name*=foo], [name*=bar]");

或兩個電話:

const var1 = form.querySelector("[name*=foo]") || form.querySelector("[name*=bar]");

它們之間的區別在於選擇器組將查找文檔順序中的第一個匹配元素,無論是foo元素還是bar元素。 第二個將首先查找foo元素,如果沒有找到foo則只查找bar元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM