Tôi nghĩ rằng tôi thiếu một thứ gì đó vì dường như không có cách nào thông qua CSS để phân biệt giữa giá trị best_in_place và trình giữ chỗ (data-nil = "nhập số của bạn"). Tôi chỉ muốn tạo kiểu cho trình giữ chỗ khác với giá trị thực tế để nó không có vẻ khó hiểu.Trình giữ chỗ kiểu cách khác với giá trị với best_in_place
Tôi đã xem xét các sự kiện và thực sự có thể thêm lớp vào phần tử, tuy nhiên khi chúng được hiển thị trên trang lần đầu tiên, không có sự kiện nào để thêm lớp đó. Tại thời điểm này tôi sẽ lặp qua mỗi $ ('best_in_place') và so sánh giá trị nil với html trong span, tuy nhiên trước khi tôi làm điều này tôi chỉ tự hỏi nếu tôi bỏ lỡ một cái gì đó.
Vậy có cách nào để phân biệt rằng giá trị đã được đặt bằng best_in_place không?
Nếu mã giúp bạn hiểu rõ hơn: Công cụ này hoạt động, chỉ cần thêm hoặc xóa lớp vào best_in_place, tuy nhiên nó sẽ chỉ được đặt khi người dùng chỉnh sửa trường, chứ không phải khi tải trang nội bộ.
$('.best_in_place').bind('best_in_place:update', function(evt){
if($(this).data('nil') == $(this).html()){
$(this).removeClass('has_value');
}else{
$(this).addClass('has_value');
}
});
thiên tài! cảm ơn :) –