Tôi đã gặp sự cố khi kích hoạt sự kiện thay đổi theo cách thủ công.Sự kiện thay đổi lửa theo cách thủ công
Vì vậy, tôi có một selectOneMenu (không giống như trình đơn thả xuống trong jsf) với các giá trị khác nhau.
Nếu tôi chọn giá trị của danh sách thả xuống này, có thể cập nhật dữ liệu. Điều này hoạt động chính xác, nếu tôi chọn giá trị này theo cách thủ công.
Hiện có trường hợp, tôi cần chèn giá trị mới vào selectOneMenu. Giá trị mới này được chọn tự động, nhưng sự kiện thay đổi để cập nhật dữ liệu không được kích hoạt ...
Vì vậy, về cơ bản tôi có nút này để lưu giá trị mới vào selectOneMenu sau đó được chọn đúng, nhưng DataTable không được cập nhật, đó là lý do tôi đã cố gắng để viết chức năng fireChange() và cho rằng đến onComplete của nút:
<p:commandButton ajax="true" id="seatingPlanSave" actionListener="#{EventAssistentController.createSeatingPlan}" value="#{msg.save}" update=":createEvent:EventSeatingPlan, :createEvent:ticketTypePrices" oncomplete="fireChange()"/>
Đối với fireChange() - chức năng, tôi đã cố gắng một vài điều khác nhau :
function fireChange() {
var element = document.getElementById("createEvent:EventSeatingPlan_input");
element.change();
}
function fireChange() {
var element = document.getElementById("createEvent:EventSeatingPlan_input");
$(element).trigger("change");
}
function fireChange() {
if ("fireEvent" in element)
element.fireEvent("onchange");
else {
var evt = document.createEvent("HTMLEvents");
evt.initEvent("change", false, true);
element.dispatchEvent(evt);
}
}
Nhưng không cách nào trong số này hoạt động: (
Bạn có thể cho tôi biết cách tôi có thể đạt được điều này không?
Cảm ơn, Xera
Wow cảm ơn bạn rất nhiều vì câu trả lời tuyệt vời này! Tôi sử dụng và như bạn đã đề xuất với widgetVar và triggerChange-Method đặc biệt, nó hoạt động hoàn hảo ngay bây giờ :-) Cảm ơn bạn một lần nữa và chúc một ngày tốt đẹp –
xeraphim