source

j선택에서 옵션 제거 쿼리

factcode 2023. 1. 19. 20:59
반응형

j선택에서 옵션 제거 쿼리

모두 클래스 이름 'ct'를 가진 5개의 선택지가 있는 페이지가 있습니다.클릭 이벤트를 실행하는 동안 각 선택 항목에서 값이 '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 또는 클래스가 없는 경우 다음과 같이 드롭다운에서 모든 값을 제거할 수 있습니다.

$(this).find('select').find('option[value]').remove();

찾기를 사용하여 목록을 반복하고 여러 항목을 제거합니다.반응에 정수 배열이 포함되어 있습니다.$('#One Select List')는 선택 목록입니다.

$.ajax({
    url: "Controller/Action",
    type: "GET",
    success: function (response) {
        // Take out excluded years.
        $.each(response, function (j, responseYear) {
            $('#OneSelectList').find('[value="' + responseYear + '"]').remove();
        });
    },
    error: function (response) {
        console.log("Error");
    }
});

드롭다운이 테이블에 있고 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

제가 가장 좋아하는 것이 된 것은 이 제품을 제거하는 것입니다.option전혀 제거하지 않는 것입니다.이 방법은 이 시스템을 제거하려는 사용자에게 유용합니다.option그러나 나중에 다시 추가하고 올바른 순서로 다시 추가해야 할 수도 있습니다.

일단 저는 사실disable이 옵션을 선택합니다.

$("#mySelect").change(
    function() {

        $("#mySelect").children('option[value="' + $(this).val() + '"]').prop("disabled", true);

        $("#re-addOption").click(
            function() {
                $("#mySelect").children('option[value="' + howeverYouStoredTheValueHere + '"]').prop("disabled", false);
            }
        );
    }
);

청소하기 위해 CSS에서disabled option숨겨야 합니다.왜냐하면,option일부 브라우저에서는 동작하지 않지만 위의 방법을 사용하면 해당 브라우저를 사용하는 클라이언트는 이 옵션을 다시 선택할 수 없습니다.

select option[disabled] {
    display: none;
}

개인적으로는re-addOption요소, 사용자 지정 속성이 있습니다.data-target="value", 및 대신howeverYouStoredTheValueHere, 나는 사용하고 있습니다.$(this).attr('data-target').

이 코드를 사용해 보았습니다.

$("#select-list").empty()

선택한 항목을 제거하려면 이 작업을 시도하십시오.

$('#btn-remove').click(function () {
    $('.ct option:selected').each(function () {
        $(this).remove();
    });
});

언급URL : https://stackoverflow.com/questions/1518216/jquery-remove-options-from-select

반응형