2

Ich habe versucht, unten Lösungen eine der aufgeführten Optionen auszuwählenprogrammatisch wählen select2 Optionen mit Jquery

<select data-placeholder="Company Name" class="select required form-control select2-hidden-accessible" name="company[company_name]" id="company_company_name" tabindex="-1" aria-hidden="true"> 
    <option value=""></option> 
    <option value="ABC">ABC</option> 
    <option value="XYZ Company">XYZ Company</option> 
    <option value="PQR Company">PQR Company</option> 
</select> 

ich versucht habe:

// Not working 
$('#company_company_name').select2('val', 'XYZ Company'); 
// => undefined 

// Not Working 
$('#company_company_name').select2('val', 'XYZ Company', true); 
// => undefined 

// Not Working 
$('#company_company_name').select2('data', {id: 'XYZ Company'); 
// => undefined 

// Not working 
$('#company_company_name').select2('data', {id: 'XYZ Company', a_key: 'XYZ Company'); 
// => undefined 

Beachten Sie auch, Code unten leeres Array zurückgibt:

$('#company_company_name').select2('data') 
// => [] 

QUESTIO N

Wie kann ich select2 Optionen auswählen, die bereits mit jquery existieren?

UPDATE

Ich habe auch versucht Wert auszuwählen und die Veränderung auslösen, aber dann, select2 gebrochen ist und ich kann einfach Auswahlfeld

$('#company_company_name').val('XYZ Company').trigger('change'); 

Antwort

2

What events does Select2 listen for?

Select2 sehen wird auf das Änderungsereignis auf dem hören, an dem es hängt. Wenn Sie externe Änderungen vornehmen, die in Select2 berücksichtigt werden müssen (z. B. Ändern des Werts), sollten Sie dieses Ereignis auslösen.

$('#company_company_name').val('XYZ Company'); 

Dann

$('#company_company_name').trigger('change'); 

Oder

$('#company_company_name').trigger('change.select2'); 
+0

Dank Beng, '$ ('# company_company_name') Trigger ('change.select2.');' Hat für mich gearbeitet, aber '.trigger ('change');' brach select2 und zeigte nur das Auswahlfeld an – przbadu