Trong mã sau, tôi thiết lập trình xử lý thay đổi trên hộp chọn để hiển thị và ẩn một số câu hỏi tiếp theo dựa trên giá trị của lựa chọn.Nhận đối tượng JQuery trống
Hơn nữa, đối với một số giá trị của lựa chọn, có thêm thông báo được hiển thị.
Để kiểm tra xem tôi có cần ẩn thông báo bổ sung không, tôi giữ một biến có tên là Trước. Khi thực thi trình xử lý, tôi kiểm tra xem liệu Trước đó có null hay không, hoặc kích thước là 0.
Sẽ tốt hơn nếu khởi tạo trước đối tượng JQuery trống để không phải thực hiện kiểm tra bổ sung cho null.
Làm một $() trả về một đối tượng với kích thước của 1.
Có cách nào để tạo ra một đối tượng Jquery trống rỗng?
//Init function. $(function(){ //Hold the previously selected object for the account type selection. var Previous = null; //Here is where I would like to initialize. //something like Previous = $(); $("SELECT[name='AccountType']").change( function() { //Hide Previous message if there was one. if(Previous == null || Previous.size() > 0){ Previous.hide(); } //Show the message if found and save it as previous. Previous = $("#"+this.value+"_Msg").show(); //Get fisrt question var FirstQuestion = $(".FirstQuestion"); if(this.value === ''){ FirstQuestion.hide(); }else{ //Manually show FirstQuestion. FirstQuestion.show(); } }); }
Trong trường hợp tồi tệ nhất tôi có thể làm một cái gì đó như thế này:
var Previous = { size : function() { return 0; } };
nhưng điều đó dường như quá mức cần thiết.
1 câu trả lời đáng yêu, tôi sẽ không bao giờ đã suy nghĩ về điều đó :) –
tôi không thấy cách này là khác nhau từ '$()'. Ai có thể ném ánh sáng không? – cregox
Như của jQuery 1.4, nó không phải là. Câu hỏi đã được hỏi trước đó tho. – Magnar