亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 javascript 中使用查詢選擇器

在 javascript 中使用查詢選擇器

慕無忌1623718 2024-01-03 17:33:04
我有一個帶有選擇框的表單,當我選擇一個選項時。我希望它顯示輸入和輸入字段。我已經通過其中一個選擇框上的更改事件偵聽器很好地完成了此操作。我的問題是我有 4 個選擇框和 4 個輸入值,我想這樣做。我知道我必須使用查詢選擇器 all 并使用 are forEach 循環,但據我所知。使用查詢選擇器 all 時,我應該讓選擇框中的所有 ID 都相同,還是從查詢選擇器 all 中獲取所有選擇框更容易?我的選擇框和輸入都設置相同,除了不同的 ID 名稱。// codes for input boxeslet trimCode = '123456kj';let chassisCode = 'ab123';let finalCode = 'abcd1254';let materialCode = 'mnb124578';let qualityCode = 'abc123456';let paintCode = 'zyf123';let bodyCode = 'typ4598';// event listener for one select boxcurrentDept.addEventListener('change', changeCode);// changeCode functionfunction changeCode() {  const x = currentDept.value;  switch (x) {    case "trim":      classCode.value = trimCode;      break;    case "chassis":      classCode.value = chassisCode;      break;    case "final":      classCode.value = finalCode;      break;    case "material":      classCode.value = materialCode;      break;    case "quality":      classCode.value = qualityCode;      break;    case "paint":      classCode.value = paintCode;      break;    case "body":      classCode.value = bodyCode;      break;    default:      console.log('something went wrong');  }}<div class="form-control">  <label for="current">Current Department</label>  <select name="current" id="currentDept">    <option value="trim" selected>Trim</option>    <option value="chassis">Chassis</option>    <option value="final">Final</option>    <option value="material">Material</option>    <option value="quality">Quality</option>    <option value="paint">Paint</option>    <option value="body">Body</option>  </select>  <small>Error Message</small></div><div class="form-control">  <label for="classCode">Current Classification Code</label>  <input type="text" id="classCode" placeholder="Enter Current Classification Code">  <small>Error Message</small></div>
查看完整描述

1 回答

?
慕田峪9158850

TA貢獻1794條經驗 獲得超7個贊

可能有一種更簡單的方法可以做到這一點,但經過更多的研究和大量的試驗和錯誤后,我發現這是可行的。所以基本上我需要的只是“this.value”


for (var i = 0; i < selectBoxes.length; i++){

    selectBoxes[i].addEventListener('change', function(e) {

        // get the value of the select option list

        var optionValue = this.value;

        // console.log(optionValue);

        // get the index of the select box selected

        const x = [].indexOf.call(selectBoxes, e.target);

        // console.log(x);

        changeCode(optionValue, x);

    });

}


查看完整回答
反對 回復 2024-01-03
  • 1 回答
  • 0 關注
  • 154 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號