Có gì đó tôi không nhìn thấy ở đây .. Tôi có một chuỗi biến với các yếu tố id:jQuery chuỗi biến như id-selector trở lại đối tượng rỗng
var sf_new_id = "#sf_widget_choice-32:14.86:1:1"
Tôi nhận được rằng chuỗi từ một yếu tố như này ('sf_selectedmethod' là một phần tử):
var anotherid = sf_selectedmethod.attr('id');
Sau đó, tôi loại bỏ các char cuối cùng và thêm một số thông tin để id đó, cụ thể là số cuối cùng và '#':
var sf_new_id = anotherid.substr(0, anotherid.length-1); // Now without the last char.
sf_new_id = '#'+sf_new_id+'1';
Và nó sẽ trở thành chuỗi mô tả ở trên.
Và tôi đang cố gắng để truy cập vào các phần tử với jQuery như thế này:
$(sf_new_id).addClass("...");
Các phần tử với id mà tồn tại, nhưng không có gì xảy ra. Tôi cũng cố gắng che giấu phần tử:
$(sf_new_id).hide();
Nhưng vẫn không có gì xảy ra.
tôi đặt toàn bộ yếu tố thành console.debug, và nó cho thấy một đối tượng rỗng:
console.debug($(sf_new_id));
Đầu ra: Object [] trong giao diện điều khiển
tôi đang thiếu gì ở đây?
Chỉnh sửa: Tôi đã cố gắng thoát và điều này có vẻ hiệu quả, nhưng bây giờ vấn đề là làm cách nào để thoát khỏi dấu hai chấm và khi thông tin có trong biến?
mã của bạn có được thực hiện sau khi tải trang không? $ (Tài liệu) .ready (function() {... your code ...}) – Yangguang
Bạn cần phải thoát các ký tự như ':' và ' . ' trong biến chuỗi của bạn. – Prachit
Tôi có nghi ngờ biến javascript được khai báo với # là ký tự đầu tiên ?? – shreyansh