Ca întrebare, cum pot seta o valoare de un control DropDownList folosind jQuery?
$("#mydropdownlist").attr('selectedIndex', 0);
Acest lucru se va stabili la prima valoare din droplist.
Edit: Așa cum am făcut-o mai sus a folosit pentru a lucra. Dar se pare ca nu't orice mai mult.
Dar ca Han atât de plăcut puncte în comentarii, modul corect de a face asta este:
$("#mydropdownlist").get(0).selectedIndex = index_here;
Încercați această abordare foarte simplu:
/*make sure that value is included in the options value of the dropdownlist
e.g.
(<select><option value='CA'>California</option><option value='AK'>Alaska</option> </select>)
*/
$('#mycontrolId').val(myvalue).attr("selected", "selected");
Dacă vertical este Asp.Net picătură în jos, apoi codul de mai jos va funcționa bine,
$("#<%=DropDownName.ClientID%>")[0].selectedIndex=0;
Dar dacă Vertical este HTML drop jos atunci acest cod va funcționa.
$("#DropDownName")[0].selectedIndex=0;
Cel mai bun răspuns pentru întrebarea:
$("#comboboxid").val(yourvalue).trigger("chosen:updated");
e.g:
$("#CityID").val(20).trigger("chosen:updated");
sau
$("#CityID").val("chicago").trigger("chosen:updated");
Există multe moduri de a face asta. aici sunt unele dintre ele:
$("._statusDDL").val('2');
SAU
$('select').prop('selectedIndex', 3);
Încercați:
jQuery("#availability option:selected").val();
Sau pentru a obține textul opțiune, utilizați text():
jQuery("#availability option:selected").text();
Mai Multe Informații:
http://api.jquery.com/val/
http://api.jquery.com/text/
$(document).ready(function(){
$('#button1').click(function(){
alert($('#combo :selected').text());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="combo">
<option value="1">Test 1</option>
<option value="2">Test 2</option>
</select>
<input id="button1" type="button" value="Click!" />
Cred că acest lucru poate ajuta:
$.getJSON('<%= Url.Action("GetDepartment") %>',
{ coDepartment: paramDepartment },
function(data) {
$(".autoCompleteDepartment").empty();
$(".autoCompleteDepartment").append($("<option />").val(-1));
$.each(data, function() {
$(".autoCompleteDepartment").append($("<option />").val(this.CodDepartment).text(this.DepartmentName));
});
$(".autoCompleteDepartment").val(-1);
}
);
Dacă faci în acest fel, puteți adăuga un element cu nici un text. Deci, atunci când faceți clic pe de combo, nu't apar, dar valoarea -1 ați adăugat-o mai târziu, selectați cu $(".autoCompleteDepartment").val(-1); să vă controlați dacă combo are o valoare validă.
Sper că vă ajută pe nimeni.
Îmi pare rău pentru meu englez.
Aici este o funcție a făcut să setați rapid opțiunea selectată:
function SetSelected(elem, val){
$('#'+elem+' option').each(function(i,d){
// console.log('searching match for '+ elem + ' ' + d.value + ' equal to '+ val);
if($.trim(d.value).toLowerCase() == $.trim(val).toLowerCase()){
// console.log('found match for '+ elem + ' ' + d.value);
$('#'+elem).prop('selectedIndex', i);
}
});
}
Numesc această funcție cu un argument element de identitate și de valoarea selectată; astfel:
SetSelected('selectID','some option');
Este util când există o mulțime de selectați opțiuni pentru a fi setat.
Set "drop-down ""selectat" valoarea și actualizare schimbă
$("#PR2DistrictId option[value='@Model.PR2DistrictId']").attr("selected", true).trigger("chosen:updated")
Aici ne-am stabilit prima valoare de pe "Model" și actualizat pe alese
//Format Html din lista verticală.
<select id="MyDropDownList">
<option value=test1 selected>test1</option>
<option value=test2>test2</option>
<option value=test3>test3</option>
<option value=test4>test4</option>
var NewOprionValue = "Test2"
var RemoveSelected = $("#MyDropDownList")[0].innerHTML.replace('selected', '');
var ChangeSelected = RemoveSelected.replace(NewOption, NewOption + 'selected>');
$('#MyDropDownList').html(ChangeSelected);
În cazul când încărcați toate <opțiuni ....></opțiuni>
prin apel Ajax
Urmați acești pași pentru a face acest lucru.
1). A crea o metodă separată pentru a seta valoarea de drop-jos
De Ex:
function set_ip_base_country(countryCode)
$('#country').val(countryCode)
}
2). Numim această metodă atunci când apel ajax succes toate html adăugare sarcină completă
De Ex:
success: function (doc) {
.....
.....
$("#country").append('<option style="color:black;" value="' + key + '">' + value + '</option>')
set_ip_base_country(ip_base_country)
}
Folosind evidențiate/verificat raspunsul de mai sus a lucrat pentru mine... aici's un pic de perspectivă. Am trișat un pic pe obtinerea URL-ul, dar practic am'm a defini URL-ul în Javascript, și apoi stabilirea prin jquery răspunsul de mai sus:
<select id="select" onChange="window.location.href=this.value">
<option value="">Select a task </option>
<option value="http://127.0.0.1:5000/choose_form/1">Task 1</option>
<option value="http://127.0.0.1:5000/choose_form/2">Task 2</option>
<option value="http://127.0.0.1:5000/choose_form/3">Task 3</option>
<option value="http://127.0.0.1:5000/choose_form/4">Task 4</option>
<option value="http://127.0.0.1:5000/choose_form/5">Task 5</option>
<option value="http://127.0.0.1:5000/choose_form/6">Task 6</option>
<option value="http://127.0.0.1:5000/choose_form/7">Task 7</option>
<option value="http://127.0.0.1:5000/choose_form/8">Task 8</option>
</select>
<script>
var pathArray = window.location.pathname.split( '/' );
var selectedItem = "http://127.0.0.1:5000/" + pathArray[1] + "/" + pathArray[2];
var trimmedItem = selectedItem.trim();
$("#select").val(trimmedItem);
</script>
Dacă aveți nevoie doar pentru a seta valoarea de un vertical apoi cel mai bun mod este de
$("#ID").val("2");
Dacă Aveți pentru a declanșa orice scenariu după actualizarea vertical valoare cum ar fi Dacă setați orice eveniment onChange pe verticală și doriți să rulați această după actualizarea vertical decât Aveți nevoie pentru a utiliza ca acest
$("#ID").val("2").change();