1
HTML의 <select options>
태그에 문제가 있습니다.Jquery select selected option trouble
드롭 다운의 선택된 값을 사용하여 AJAX 호출에서 뭔가 할 수 있도록 jQuery와 Javascript를 사용하여 선택 드롭 다운의 값을 변경하려고합니다. 그러나 그것을 변경 한 다음 변경하기 전에 선택한 이전 값으로 되돌리고 싶습니다. 문제가 발생합니다 ... 여전히 드롭 다운 옵션에서 값을 선택하거나 선택할 수 있지만 <select option>
단추/양식 상자는 내가 마지막으로 입력 한 값입니다.
해결 방법이 있습니까? 여기에 내 코드가있다.
//retrieving value of the selected option
var selBlock = $("#block_name option:selected").text();
//changing the value of the selected option from the dropdown to the very first option
$("#block_name").change(function() {
$("#block_name option:first").attr('selected','selected');
}).change();
//changing back the value of the selected option on the dropdown by reverting to the old value saved in selBlock
$("#block_name").change(function(){
$("#block_name").find('option:selected').removeAttr("selected");
document.getElementById('block_name').value = selBlock;
}).change();
이
나를 단순히는 AJAX 호출을 호출하고 데이터베이스에서 새 값을 검색합니다 변경하기 때문에, 드롭 다운에서 선택한 옵션을 변경하여 실시간 효과를 얻을 수있는 방법이다. SSE 또는 AJAX long polling을 사용하지 않기로 선택했기 때문에 서버에 스트레스를 가할 것입니다.
다음과 같은 몇 가지 문제가 있습니다. 1) 동일한 요소에 대한 change 이벤트에 두 번 바인딩하고 다른 바인드가 수행하는 작업에 대응하고, 2) 변경 이벤트를 바인딩 한 직후에 변경 사항을 발생시키고, 3) 어쨌든 첫 번째 옵션 이외의 선택 목록에서 아무 것도 선택할 수 없도록 변경된 값을 무시합니다. 그 외에도 jQuery를 사용하여 아약스 호출의 값을 변경해서는 안되며, 사용자가 선택한 모든 값을 사용해야한다. $ ("# block_name"). val()이 작동한다. –