클래스 이름 ‘ct’가 모두 5 선택 된 페이지가 있습니다. onclick 이벤트를 실행하는 동안 각 선택에서 값이 ‘X’인 옵션을 제거해야합니다. 내 코드는 다음과 같습니다
$(".ct").each(function() {
$(this).find('X').remove();
});
내가 어디로 잘못 가고 있니?
답변
이 시도:
$(".ct option[value='X']").each(function() {
$(this).remove();
});
더 간결 해지려면 다음과 같이 작동합니다.
$(".ct option[value='X']").remove();
답변
$('.ct option').each(function() {
if ( $(this).val() == 'X' ) {
$(this).remove();
}
});
아니면 그냥
$('.ct option[value="X"]').remove();
요점은 find
셀렉터 문자열 을 가져 와서 x
이름이 지정된 요소를 찾는 것입니다 x
.
답변
find()
값이 아닌 선택자를 사용합니다. 즉, 일반 jQuery 함수 ( $('selector')
)를 사용하는 것과 같은 방식으로 사용해야합니다 .
따라서 다음과 같이해야합니다.
$(this).find('[value="X"]').remove();
jQuery 찾기 문서를 참조하십시오 .
답변
옵션 태그 또는 텍스트 필드에서 작동합니다.
$("#idname option[value='option1']").remove();
답변
드롭 다운이 테이블에 있고 ID가 없으면 다음 jquery를 사용할 수 있습니다.
var select_object = purchasing_table.rows[row_index].cells[cell_index].childNodes[1];
$(select_object).find('option[value='+site_name+']').remove();
답변
jquery <1.8의 경우 다음을 사용할 수 있습니다.
$('#selectedId option').slice(index1,index2).remove()
선택 옵션의 특정 범위를 제거합니다.
답변
내가 제거했을 때 옵션은보기의 ddl에 남아 있지만 html에는 없었습니다 (페이지를 검사하는 경우)
$("#ddlSelectList option[value='2']").remove(); //removes the option with value = 2
$('#ddlSelectList').val('').trigger('chosen:updated'); //refreshes the drop down list