[javascript] 기본값을 선택하지 않은 경우 jQuery에서 옵션이 선택되어 있는지 확인하십시오.

jQuery를 사용하여 선택 메뉴에서 선택된 옵션이 있는지 확인하고 그렇지 않은 경우 옵션 중 하나를 선택한대로 지정하십시오.

(선택은 방금 상속받은 앱에서 PHP 함수의 미로로 생성되므로이를 둘러싼 빠른 수정입니다.)



답변

정확히 무엇을 달성하고 싶은지 잘 모르겠지만이 코드는 저에게 효과적이었습니다.

<select id="mySelect" multiple="multiple">
  <option value="1">First</option>
  <option value="2">Second</option>
  <option value="3">Third</option>
  <option value="4">Fourth</option>
</select>

<script type="text/javascript">
$(document).ready(function() {
  if (!$("#mySelect option:selected").length) {
    $("#mySelect option[value='3']").attr('selected', 'selected');
  }
});
</script>


답변

이를 위해 jQuery를 사용할 필요가 없습니다.

var foo = document.getElementById('yourSelect');
if (foo)
{
   if (foo.selectedIndex != null)
   {
       foo.selectedIndex = 0;
   }
}


답변

이 질문은 오래되었고 많은 견해를 가지고 있기 때문에 확실하게 사람들에게 도움이 될만한 물건을 버리겠습니다.

선택 요소에 선택된 항목이 있는지 확인하려면 다음을 수행하십시오.

if ($('#mySelect option:selected').length > 0) { alert('has a selected item'); }

또는 선택에 아무것도 선택되어 있지 않은지 확인하려면 다음을 수행하십시오.

if ($('#mySelect option:selected').length == 0) { alert('nothing selected'); }

또는 어떤 종류의 루프에 있고 현재 요소가 선택되어 있는지 확인하려는 경우 :

$('#mySelect option').each(function() {
    if ($(this).is(':selected')) { .. }
});

루프 중에 요소가 선택되지 않았는지 확인하려면

$('#mySelect option').each(function() {
    if ($(this).not(':selected')) { .. }
});

이것들은 이것을 수행하는 몇 가지 방법입니다. jQuery에는 동일한 작업을 수행하는 다양한 방법이 있으므로 일반적으로 가장 효율적인 방법을 선택하면됩니다.


답변

lencioni의 대답 은 내가 추천하는 것입니다. ('#mySelect option:last')#mySelect option[value='yourDefaultValue']“를 사용하여 옵션의 선택기를 변경하여 특정 값을 가진 옵션 을 선택할 수 있습니다 . 선택기에 대한 추가 정보 .

클라이언트의 선택 목록을 광범위하게 사용하는 경우 http://www.texotela.co.uk/code/jquery/select/ 플러그인을 확인
하십시오 . 선택 목록 작업에 대한 예제를 더 보려면 소스를 살펴보십시오.


답변

선택한 옵션을 변경하는 기능입니다. jQuery 1.3.2에서 작동합니다.

function selectOption(select_id, option_val) {
    $('#'+select_id+' option:selected').removeAttr('selected');
    $('#'+select_id+' option[value='+option_val+']').attr('selected','selected');
}


답변

<script type="text/javascript">
$(document).ready(function() {
  if (!$("#mySelect option:selected").length)
   $("#mySelect").val( 3 );

});
</script>


답변

쉬운! 기본값은 첫 번째 옵션이어야합니다. 끝난! JavaScript가 필요하지 않기 때문에 눈에 거슬리지 않는 JavaScript로 이어질 것입니다. 🙂

눈에 띄지 않는 JavaScript