Tôi đã tạo một trường nơi người dùng có thể thêm bài kiểm tra. Tất cả đều chạy trơn tru, tôi chỉ muốn khi người dùng nhấp vào (thêm một bài kiểm tra khác) thì bài kiểm tra trước đó (thêm một bài kiểm tra khác) sẽ xóa và bài kiểm tra này hiển thị trong trường mới.
Vấn đề duy nhất với tất cả đều hoạt động tốt là nhấp chuột (thêm trường khác) trước khi thêm trường khác không ẩn và tôi muốn nó tự động hiển thị khi người dùng nhấp (xóa) trường khác bị ẩn trước đó.
Vui lòng kiểm tra mã của tôi cảm ơn.
hàm !(a) {
"sử dụng nghiêm ngặt";
một(hàm() {
var b = a(".wpcf7-field-groups");
b.length && (b.each(function() {
a(this).data("group-model", a(this).find(".wpcf7-field-group").eq(0).clone())
}), a("body").on("wpcf7-field-groups/change", ".wpcf7-field-groups", function() {
var b = a(this).find(".wpcf7-field-group");
b.each(hàm(b) {
a(this).find(".wpcf7-field-group-remove").toggle(b > 0);
var c = b + 1;
a(this).find("[name]").each(function() {
var b = a(cái này),
d = b.closest(".wpcf7-form-control-wrap"),
e = b.attr("tên"),
f = e.indexOf("[]") > -1,
g = e.replace("[]", ""),
h = g.replace(/__[0-9]*/, "") + "__" + c;
d.length && !d.hasClass(h) && d.removeClass(g).addClass(h), h += f ? "[]" : "", b.attr("name", h)
})
}), a(this).find(".wpcf7-field-group-count").val(b.length)
}), b.trigger("wpcf7-field-groups/change"), a("body").on("click", ".wpcf7-field-group-add, .wpcf7-field-group-remove" , chức năng() {
var b = a(cái này),
c = b.closest(".wpcf7-field-groups");
if (b.hasClass("wpcf7-field-group-add")) {
var d = c.data("group-model").clone();
c.append(d), b.trigger("wpcf7-field-groups/ Added");
} else b.trigger("wpcf7-field-groups/removed"), b.closest(".wpcf7-field-group").remove();
trả về c.trigger("wpcf7-field-groups/change"), !1
}))
})
}(jQuery);
Đây là mã codepen hoạt động hoàn chỉnh của tôi, vui lòng kiểm tra và cho tôi biết cách giải quyết vấn đề này :)
https://codepen.io/anon/pen/ZqwORX
Cảm ơn trước
Chỉ cần thêm phần này vào hàm liên kết nhấp chuột với phần tử:
e.currentTarget.style.display = "không";
và sẽe
Được gửi dưới dạng đối số cho một hàm.
Nó diễn ra như thế này:
if (b.hasClass("wpcf7-field-group-add")) {
e.currentTarget.style.display = "none" // THÊM DÒNG NÀY
var d = c.data("group-model").clone();
c.append(d), b.trigger("wpcf7-field-groups/ Added");
}
Về javascript - Cách ẩn nút (thêm) được nhấp lần cuối khi nhấp vào thêm và khi người dùng nhấp vào nút xóa rồi hiển thị nút ẩn (thêm) trước đó, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/53006415/
Tôi là một lập trình viên xuất sắc, rất giỏi!