jQuery를 사용하여 DropDownList 값을 설정하려면 어떻게 해야 합니까?
질문에 나와 있듯이 jQuery를 사용하여 DropDownList 컨트롤의 값을 설정하려면 어떻게 해야 합니까?
$("#mydropdownlist").val("thevalue");
옵션 태그의 값이 Val 메서드의 값과 일치하는지 확인하십시오.
@Nick Berardi가 제안한 것처럼 변경된 값이 UI 프런트 엔드에 반영되지 않으면 다음을 시도합니다.
$("#mydropdownlist").val("thevalue").change();
인덱스로 작업하는 경우 .attr()을 사용하여 선택한 인덱스를 직접 설정할 수 있습니다.
$("#mydropdownlist").attr('selectedIndex', 0);
그러면 드롭다운 목록의 첫 번째 값으로 설정됩니다.
편집: 위에서 제가 했던 방식은 작동했습니다.하지만 더 이상 그렇지 않은 것 같습니다.
하지만 Han이 댓글에서 매우 기쁘게 지적했듯이, 올바른 방법은 다음과 같습니다.
$("#mydropdownlist").get(0).selectedIndex = index_here;
다음과 같은 매우 간단한 접근법을 시도해 보십시오.
/*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");
드롭다운이 As인 경우.순 드롭다운 후 아래 코드가 작동합니다.
$("#<%=DropDownName.ClientID%>")[0].selectedIndex=0;
그러나 드롭다운이 HTML 드롭다운이면 이 코드가 작동합니다.
$("#DropDownName")[0].selectedIndex=0;
질문에 대한 최선의 답변:
$("#comboboxid").val(yourvalue).trigger("chosen:updated");
예:
$("#CityID").val(20).trigger("chosen:updated");
또는
$("#CityID").val("chicago").trigger("chosen:updated");
그것을 할 수 있는 많은 방법들이 있습니다.그 중 일부는 다음과 같습니다.
$("._statusDDL").val('2');
OR
$('select').prop('selectedIndex', 3);
값 설정 및 드롭다운 목록 업데이트 이벤트
$("#id").val("1234").change();
드롭다운 값만 설정하면 되는 경우 가장 좋은 방법은
$("#ID").val("2");
드롭다운 값을 업데이트한 후 스크립트를 트리거해야 하는 경우 드롭다운에서 onChange 이벤트를 설정하고 업데이트한 후 이를 실행하려면 다음보다 사용해야 합니다.
$("#ID").val("2").change();
이것이 도움이 될 수 있다고 생각합니다.
$.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);
}
);
이렇게 하면 텍스트가 없는 요소를 추가합니다.따라서 de combo를 클릭하면 표시되지 않지만 나중에 추가한 값 -1이 $(.autoCompleteDepartment").val(-1)로 선택됩니다. 콤보에 유효한 값이 있는지 여부를 제어할 수 있습니다.
누구든 도움이 되길 바랍니다.
제가 영어를 못해서 죄송합니다.
다음은 선택한 옵션을 빠르게 설정하기 위한 기능입니다.
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);
}
});
}
인수 요소 ID와 선택한 값으로 이 함수를 호출합니다. 다음과 같습니다.
SetSelected('selectID','some option');
설정할 선택 옵션이 많을 때 유용합니다.
당신이 모든 것을 로드할 경우<options ....></options>
아약스 전화로
이 작업을 수행하려면 다음 단계를 수행합니다.
. 드롭다운 값 설정을 위한 별도의 메소드 생성
예:
function set_ip_base_country(countryCode)
$('#country').val(countryCode)
}
. ajax call success all html append 작업이 완료되면 이 메서드를 호출합니다.
예:
success: function (doc) {
.....
.....
$("#country").append('<option style="color:black;" value="' + key + '">' + value + '</option>')
set_ip_base_country(ip_base_country)
}
세트drop-down
selected
값 및 업데이트 변경
$("#PR2DistrictId option[value='@Model.PR2DistrictId']").attr("selected", true).trigger("chosen:updated")
여기서 먼저 값을 설정합니다.Model
그리고 선택된 날짜에 업데이트했습니다.
//Html 드롭다운 목록의 형식입니다.
<select id="MyDropDownList">
<option value=test1 selected>test1</option>
<option value=test2>test2</option>
<option value=test3>test3</option>
<option value=test4>test4</option>
자바스크립트를 사용하여 선택한 Item을 test2로 변경하고자 하는 경우.이것을 사용해 보십시오. // 선택할 다음 옵션을 설정합니다.
var NewOprionValue = "Test2"
var RemoveSelected = $("#MyDropDownList")[0].innerHTML.replace('selected', '');
var ChangeSelected = RemoveSelected.replace(NewOption, NewOption + 'selected>');
$('#MyDropDownList').html(ChangeSelected);
위에 강조 표시된/체크 표시된 답변을 사용하는 것이 저에게 도움이 되었습니다.여기 작은 통찰력이 있습니다.URL을 얻는 것에 대해 약간의 속임수를 썼지만, 기본적으로 자바스크립트에서 URL을 정의한 다음 위의 jquery 답변을 통해 설정하고 있습니다.
<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>
부트스트랩을은 부스트랩사용경우의자를 합니다.$(#elementId').selectpicker('val','elementValue')
에 $('#elementId').val('elementValue')
후자는 UI의 값을 업데이트하지 않기 때문입니다.
참고: 짝수.change()
위의 일부 답변에서 제안된 것처럼 기능이 작동하지만, 그것은 트리거합니다.$('#elementId').change(function(){ //do something })
기능.
미래에 이 스레드를 참조하는 사람들을 위해 이것을 게시하는 것입니다.
//customerDB is an Array
for(i of customerDB){
//create option and add to drop down list
var set = `<option value=${i.id}>${i.id}</option>`;
$('#dropDown').append(set);
}
// print dropdown values on console
$('#dropDown').click(function(){
console.log($(this).val())
})
언급URL : https://stackoverflow.com/questions/292615/how-can-i-set-the-value-of-a-dropdownlist-using-jquery
'programing' 카테고리의 다른 글
"db.createUser는 함수가 아닙니다" 및 "암호는 비워 둘 수 없습니다" (0) | 2023.06.01 |
---|---|
사용자 지정 .NET 예외를 직렬화할 수 있도록 만드는 올바른 방법은 무엇입니까? (0) | 2023.06.01 |
주입 방법에 대한 간단한 설명이 필요합니다. (0) | 2023.06.01 |
DTO를 도메인 개체에 매핑하기 위한 모범 사례? (0) | 2023.06.01 |
C#에서 문자열을 다른 문자열로 분할 (0) | 2023.06.01 |