ID jQuery bắt đầu bằng


130

Tôi đang cố gắng để có được tất cả các yếu tố với một id bắt đầu với một số giá trị. Dưới đây là mã jQuery của tôi. Tôi đang cố gắng sử dụng một biến JavaScript khi tìm kiếm các mục. Nhưng nó không hoạt động. Tôi còn thiếu gì dưới đây? Vì vậy, id 'value' đang tìm kiếm là giá trị của phần tử được nhấp

$(document).ready(function() {
    $('input[name$="_chkmulti"]').click(function(){
        var value = $(this).val();
        $("td[id^= + value +]").each(function(){
            alert("yes");
        });


    });
});

Câu trả lời:


246

thử:

$("td[id^=" + value + "]")

Một lời cảnh báo: bộ chọn này không hoạt động nếu 'giá trị' là một thành phần HTML, vì tôi đã phát hiện ra một cách khó khăn khi tất cả ID của tôi cho các mục danh sách bắt đầu bằng 'li'. Giải pháp là bắt đầu chúng với 'li_'
Tim Dawson

50

Ở đây bạn đi:

$('td[id^="' + value +'"]')

vì vậy, nếu giá trị là ví dụ 'foo', thì bộ chọn sẽ là 'td[id^="foo"]'.

Lưu ý rằng các trích dẫn là bắt buộc : [id^="...."].

Nguồn: http://api.jquery.com/attribution-starts-with-selector/


1
Các trích dẫn không thực sự bắt buộc: "value: Một giá trị thuộc tính. Có thể là một từ đơn không được trích dẫn hoặc một chuỗi được trích dẫn." Từ các tài liệu được liên kết trong câu trả lời. Tương tự như câu trả lời được chấp nhận.
Ralph Lavelle
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.