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

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

Jquery - 按值設置選定選項不起作用

Jquery - 按值設置選定選項不起作用

蠱毒傳說 2022-06-09 10:43:33
我已經嘗試了谷歌的所有解決方案。我錯過了什么?我想要的選項沒有被選中。這是我遇到問題的代碼部分。我已經包含了我嘗試過的其他一些東西(注釋掉了)。如果重要的話,這個列表是動態構建的,但是按值選擇它的代碼是在該過程之后。我在 Chrome 版本 80.0.3987.149// EDIT ADDED THIS CODE FROM MY APPLICATIONconst url = '/api/Customers';// Populate dropdown$.getJSON(url, function (data) {    $.each(data, function (key, entry) {        dropdown.append($('<option></option>').attr('value', entry.CustomerID).text(entry.Name + ' - ' + entry.Email));    })});// END EDIT ^^^^^//var customerID = window.location.hash;var customerID = "6a1920b2-f388-4790-a720-75048e1407a7"; //Test User 5console.log(customerID);//$('#customer-dropdown option[value="'+ customerID +'"]').prop('selected', true);//$("#customer-dropdown select").val(customerID);$("#customer-dropdown option[data-value='" + customerID +"']").attr("selected","selected");<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><select id="customer-dropdown" name="c15905d7-8216-4e81-ac15-2fafd10b49e8">  <option disabled="">Select Customer</option>  <option value="297f8676-80bf-43e5-b463-031a5b5154aa">Test User 1</option>  <option value="83941899-8039-488f-bf6b-0d036c7d6556">Test User 2</option>  <option value="263356fd-d803-4436-a7fc-4df5a3095771">Test User 3</option>  <option value="2e31ee49-b096-4237-b07e-61071871334d">Test User 4</option>  <option value="6a1920b2-f388-4790-a720-75048e1407a7">Test User 5</option>  <option value="072f6800-570c-4004-b9cd-7bdb4cf98b0a">Test User 6</option>  <option value="c957f2c0-f72e-4de7-9b4f-9272cbbfd783">Test User 7</option>  <option value="d870225f-c020-4369-bd7b-9dc5d16f34a1">Test User 8</option></select>
查看完整描述

2 回答

?
哈士奇WWW

TA貢獻1799條經驗 獲得超6個贊

只需將值分配給select.


//var customerID = window.location.hash;

var customerID = "6a1920b2-f388-4790-a720-75048e1407a7"; //Test User 5


//$('#customer-dropdown option[value="'+ customerID +'"]').prop('selected', true);

//$("#customer-dropdown select").val(customerID);

$("#customer-dropdown").val(customerID);

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<select id="customer-dropdown" name="c15905d7-8216-4e81-ac15-2fafd10b49e8">

  <option disabled="">Select Customer</option>

  <option value="297f8676-80bf-43e5-b463-031a5b5154aa">Test User 1</option>

  <option value="83941899-8039-488f-bf6b-0d036c7d6556">Test User 2</option>

  <option value="263356fd-d803-4436-a7fc-4df5a3095771">Test User 3</option>

  <option value="2e31ee49-b096-4237-b07e-61071871334d">Test User 4</option>

  <option value="6a1920b2-f388-4790-a720-75048e1407a7">Test User 5</option>

  <option value="072f6800-570c-4004-b9cd-7bdb4cf98b0a">Test User 6</option>

  <option value="c957f2c0-f72e-4de7-9b4f-9272cbbfd783">Test User 7</option>

  <option value="d870225f-c020-4369-bd7b-9dc5d16f34a1">Test User 8</option>

</select>


查看完整回答
反對 回復 2022-06-09
?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

這最終成為我解決 .getJSON (async) 引入的時間問題的解決方案:


我只是在構建下拉列表時選擇了它:


$.getJSON(url, function (data) {

    $.each(data, function (key, entry) {

        //console.log(entry.CustomerID + " | " + customerID + " | " + (entry.CustomerID == customerID))

        if (entry.CustomerID == customerID) {

            dropdown.append($('<option></option>').attr({ value: entry.CustomerID, selected: "selected" }).text(entry.Name + ' - ' + entry.Email));

            dropdown.val(customerID);

        } else {

            dropdown.append($('<option></option>').attr('value', entry.CustomerID).text(entry.Name + ' - ' + entry.Email));

        }

    })

});


查看完整回答
反對 回復 2022-06-09
  • 2 回答
  • 0 關注
  • 208 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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