[英]how can i use JQuery with getElementsById?
我有這個變量
formEditable = document.getElementById("formid").getElementsByTagName("input");
我想要那樣
formEditable = $("#formid").getElementsByTagName("input");
如果頁面中有很多<input>
,則應該使用
// Locate the first element with ID `formid`,
// then query its descendants for `<input>` elements.
formEditable = $("#formid").find("input");
出於性能原因,因為選擇器是從右到左評估的。
使用查詢$("#formid input")
,首先定位所有<input>
,然后根據它們的祖先元素過濾它們,尋找 ID 為formid
的祖先。
這並不是 jQuery 獨有的,但您的原始解決方案實際上考慮到了這一點:
formEditable = document.getElementById("formid").getElementsByTagName("input");
請注意,jQuery 查詢返回一個 jQuery 對象,而不是元素的DOMNodeList
。 所以變量formEditable
將是一個 jQuery 對象。 要將 jQuery 對象轉換為數組,請使用toArray
方法。
您可以改用單個選擇器字符串:
const inputsInsideForm = $('#formid input');
這將為您提供所有input
元素的 jQuery 集合,這些元素是#formid
元素的后代。
如果必須改用getElementsByTagName
,請先從$("#formid")
集合中提取元素:
$("#formid")[0].getElementsByTagName("input");
這將為您提供這些輸入的實時 HTMLCollection。
您可以簡單地使用以下代碼:
$("#formid").getElementsByTagName("input");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.