我有一個案例,其中有此表格:
<form id="hello"> <input type="hidden" name="id" /> </form>
我嘗試使用 javascript 檢索其 ID:
const form = document.getElementById("#hello") console.log(form.id)
但這導致返回:
<input type="hidden" name="id" />
改為 HTMLElement。因此,為了緩解這個問題,我使用了 getAttribute 函數:
const form = document.getElementById("#hello") console.log(form.getAttribute('id'))
乍看這個例子似乎與問題無關。但就我而言,我正在開發一個實用程式庫,其中 HTMLElement 作為參數被接收:
function formEnable(form,enable,resetFeedback=true){ // checks whether for is an actual form are ommited for simplicity const formId = form.id const submitBtn = form.querySelector(`button[type="submit"]`)?? document.querySelector(`button[form="${formId}"][type="submit"]`) ?? document.querySelector(`button[form="${formId}"]`); if(!submitBtn){ throw Error("Unable to enable or disable form") } // Form Enabling Logic }
在我的例子中,我使用此函數來放置表單啟用的邏輯,並且因為名稱為 id 的隱藏輸入作為我的表單按鈕中的輸入欄位無法檢索。
因此,我做了:
function formEnable(form,enable,resetFeedback=true){ // checks whether for is an actual form are ommited for simplicity const formId = form.getAttribute('id'); const submitBtn = form.querySelector(`button[type="submit"]`)?? document.querySelector(`button[form="${formId}"][type="submit"]`) ?? document.querySelector(`button[form="${formId}"]`); if(!submitBtn){ throw Error("Unable to enable or disable form") } // Form Enabling Logic }
確保我收到了有關輸入的 id 屬性及其表單中存在的名稱。
以上是取得表單 ID。這不是你想的那樣的詳細內容。更多資訊請關注PHP中文網其他相關文章!