Vì vậy, tôi hiện có một hộp thoại jQuery với hai nút: Lưu và Đóng. Tôi tạo hộp thoại bằng đoạn mã dưới đây:
$dialogDiv.dialog({
autoOpen: false,
modal: true,
width: 600,
resizable: false,
buttons: {
Cancel: function() {
// Cancel code here
},
'Save': function() {
// Save code here
}
},
close: function() {
// Close code here (incidentally, same as Cancel code)
}
});
Tuy nhiên, cả hai nút đều có cùng màu khi mã này được sử dụng. Tôi muốn nút Hủy của mình có màu khác với nút Lưu của tôi. Có cách nào để thực hiện việc này bằng cách sử dụng một số tùy chọn jQuery tích hợp sẵn không? Tôi không nhận được nhiều trợ giúp từ tài liệu.
Lưu ý rằng nút Hủy mà tôi đang tạo là loại được xác định trước, nhưng 'Lưu' tôi đang tự xác định. Không chắc liệu điều đó có liên quan đến vấn đề này hay không.
Bất kỳ trợ giúp sẽ được đánh giá cao. Cảm ơn.
CẬP NHẬT: Sự đồng thuận là có hai con đường để đi đến đây:
- Kiểm tra HTML bằng cách sử dụng một plugin của Firefox như firebug , và lưu ý các lớp CSS mà jQuery đang áp dụng cho các nút và cố gắng ghi đè chúng. Lưu ý: trong HTML của tôi, cả hai nút đều được sử dụng cùng các lớp CSS và không có ID duy nhất, vì vậy tùy chọn này đã bị loại bỏ.
- Sử dụng bộ chọn jQuery trên hộp thoại đang mở để bắt nút mà tôi muốn và sau đó thêm lớp CSS vào đó.
Tôi đã chọn tùy chọn thứ hai và sử dụng phương thức jQuery find () vì tôi nghĩ điều này phù hợp hơn so với việc sử dụng: first hoặc: first-child b / c nút mà tôi muốn thay đổi không nhất thiết phải là nút đầu tiên được liệt kê trong đánh dấu. Sử dụng find, tôi có thể chỉ định tên của nút và thêm CSS theo cách đó. Đoạn mã mà tôi đã kết thúc là bên dưới:
$dialogDiv.dialog({
autoOpen: false,
modal: true,
width: 600,
resizable: false,
buttons: {
Cancel: function() {
// Cancel code here
},
'Save': function() {
// Save code here
}
},
open: function() {
$('.ui-dialog-buttonpane').find('button:contains("Cancel")').addClass('cancelButtonClass');
}
close: function() {
// Close code here (incidentally, same as Cancel code)
}
});
className
thành"class"
.