어쨌든 페이지로드시 선택 상자에서 변경 이벤트를 트리거하고 특정 옵션을 선택할 수 있습니까?
또한 함수를 이벤트에 바인딩 한 후 트리거를 추가하여 실행 된 함수입니다.
나는 이런 식으로 출력하려고 했습니다.
<select class="check">
<option value="one">one</option>
<option value="two">two</option>
</select>
$(function(){
$('.check').trigger('change'); //This event will fire the change event.
$('.check').change(function(){
var data= $(this).val();
alert(data);
});
});
답변
사용 val()
받는 변화 값 (텍스트가 아닌) 및 trigger()
수동으로 이벤트를 발사.
변경 이벤트 핸들러는 트리거 전에 선언해야합니다.
$('.check').change(function(){
var data= $(this).val();
alert(data);
});
$('.check')
.val('two')
.trigger('change');
답변
옵션을 선택하려면 select .val('value-of-the-option')
요소를 사용 하십시오. 변경 요소를 트리거하려면 .change()
또는을 사용하십시오 .trigger('change')
.
코드의 문제는 점 대신 쉼표이며 $('.check'),trigger('change');
이벤트 핸들러를 바인딩하기 전에 호출한다는 사실입니다.
답변
$('#edit_user_details').find('select').trigger('change');
로 html 태그 선택 드롭 다운 항목을 변경합니다 id="edit_user_details"
.
답변
jQuery 트리거 핸들러로 차단 된 사람들을위한 또 다른 작동 솔루션은 기본 이벤트에서 발생하는 사격 발사는 다음과 같습니다 (100 % 작동).
var sortBySelect = document.querySelector("select.your-class");
sortBySelect.value = "new value";
sortBySelect.dispatchEvent(new Event("change"));
답변
옵션 태그 값으로 링크 제공
<select size="1" name="links" onchange="window.location.href=this.value;">
<option value="http://www.google.com">Google</option>
<option value="http://www.yahoo.com">Yahoo</option>
</select>
답변
점검을 원한다면이 방법을 사용하십시오
<select size="1" name="links" onchange="functionToTriggerClick(this.value)">
<option value="">Select a Search Engine</option>
<option value="http://www.google.com">Google</option>
<option value="http://www.yahoo.com">Yahoo</option>
</select>
<script>
function functionToTriggerClick(link) {
if(link != ''){
window.location.href=link;
}
}
</script>
답변
Mohamed23gharbi의 답변을 바탕으로 :
function change(selector, value) {
var sortBySelect = document.querySelector(selector);
sortBySelect.value = value;
sortBySelect.dispatchEvent(new Event("change"));
}
function click(selector) {
var sortBySelect = document.querySelector(selector);
sortBySelect.dispatchEvent(new Event("click"));
}
function test() {
change("select#MySelect", 19);
click("button#MyButton");
click("a#MyLink");
}
내 경우에는 요소가 vue에 의해 생성 된 경우 이것이 유일한 방법입니다.