陪伴而非守候
2021-12-23 10:39:33
我有多個類,其中包含不同數量的字段,1 個類示例:<div class="row form-row-extra-phone spacer"> <div class="col-12"> <div class="input-group"> <input type="tel" name="extraPhone-0-phone_number" class="form-control" placeholder="Extra Phone Number" maxlength="128" id="id_extraPhone-0-phone_number"> <div class="input-group-append"> <a class="btn btn-success btn-circle btn-sm add-form-row" href="#" role="button" id="plus_payment_data">+</a> </div> </div> </div></div>我想迭代具有屬性 "name" 和 "id" 的類中的所有字段,并將里面的數字加 1(在示例中name="extraPhone-0-phone_number"-> name="extraPhone-1-phone_number")我可以通過以下方式選擇課程: $('.form-row-extra-phone')我迭代上所有的Fileds怎樣才能里面包含的屬性“名”和“身份證”呢?
2 回答

狐的傳說
TA貢獻1804條經驗 獲得超3個贊
我想你的意思是<div class="row form-row-extra-phone spacer">
當你談到 a class
? 這是一個element
,而不是一個類。
類可能是一個有問題的術語,因為它可以指完全無關的CSS/DOM 類或Javascript 類。
所以如果你有,<div class="something">
那么something
就是一個 CSS/DOM 類,但整個事情不是那個類,而是element
擁有那個類。
現在你所指的fields
也只是element
s。
所以你想要的是選擇所有具有該類的元素,form-row-extra-phone
以及所有具有name
屬性的后代元素。這很容易?;旧显?CSS 選擇器中,(空格)是后代元素的選擇器。
所以你可以選擇.form-row-extra-phone [name]
。
所以你可能想要的是這樣的:
document.querySelectorAll('.form-row-extra-phone [name]') .forEach(elem => elem.name.replace(/[0-9]/, x => Number(x) + 1));

呼如林
TA貢獻1798條經驗 獲得超3個贊
當您使用^=
它時,它意味著開始于,并$=
意味著結束于。
如果條件是(名稱和 ID)
$('.form-row-extra-phone input[name^="extraPhone"][id^="id_extraPhone"]')
如果條件是(名稱或 ID)
$('.form-row-extra-phone input[name^="extraPhone"],input[id^="id_extraPhone"]')
檢查這個https://api.jquery.com/multiple-attribute-selector/或谷歌“jQuery 多屬性選擇器”
添加回答
舉報
0/150
提交
取消