Good day! I need to have 2 different models to create projects and todo lists. I've figured out, that for html there is only one dialog menu that can be invoked with window.dialog.showModal();
directly. So then, I've created dialogModule file to store dialog model code for project pop-up model. Here is the code inside this module:
export const dialog = document.getElementById("project-dialog");
export const open = document.getElementById("open");
export const cancel = document.getElementById("cancel");
export const close = document.getElementById("close");
export let openModel = open.addEventListener("click", () => {
dialog.showModal();
});
export let cancelModel = cancel.addEventListener("click", () => {
dialog.close();
});
export let closeMondel = close.addEventListener("click", () => {
dialog.close();
});
And when I want to invoke project model menu, nothing happens.
Function that supposes invoking model:
import { dialog, open, openModel } from "./dialogModule";
function updateProjectItems(e) {
openModel;
const div = e.parentElement.parentElement.querySelector("div");
projectValue.value = div.innerText;
updateText = e.parentElement.parentElement.querySelector("div");
addProjectUpdate.setAttribute("onclick", "UpdateOnSelectionProjects()");
projectValue.focus();
}
With updating todo list it has window.dialog.showModal();
:
function UpdateToDoItems(e) {
if (
e.parentElement.parentElement.querySelector("div").style.textDecoration ===
""
) {
window.dialog.showModal();
const values = e.parentElement.parentElement.querySelectorAll("#values");
todoValue.value = values[0].innerText;
todoDescription.value = values[1].innerText;
todoDate.value = values[2].innerText;
todoPriority.value = values[3].innerText;
updateText = e.parentElement.parentElement.querySelectorAll("#values");
addUpdate.setAttribute("onclick", "UpdateOnSelectionItems()");
todoValue.focus();
}
}
I use variable for projects to summon a pop-up menu, which is not working. What can I do to fix it?
Here is my full repo: github repo
Top comments (5)
we provide high-quality used auto spare parts in Sajaa, Sharjah, covering models from 2015 to 2024. Our parts are carefully inspected to ensure they meet the best standards, offering reliable performance for your vehicle. The sajaa used spare parts market in Sharjah is a popular place for finding affordable, high-quality spare parts for various car models.
"To invoke a dialog modal from a module instead of using showModal directly, you can use a Progressive Block to manage the modal's state and visibility. This approach offers more flexibility, allowing you to trigger the modal through controlled functions or events, making your code more modular and maintainable.
"To invoke a dialog modal from a module instead of directly using showModal(), you can create a method within your module that triggers the modal when needed. It's like how sometimes, you don’t show your emotions but wait for the right moment. As the Sad Alone Shayari goes, "Aankhon mein aansu, dil mein udaasi, zindagi ke is pal mein kuch bhi nahi hai, bas ek khali pan hai." Similarly, invoking the modal in this way allows you to control the moment, bringing the right interaction at the right time."
Bu modüler yaklaşım, özellikle kastamonu fen lisesi taban puanı gibi dinamik verilerle çalışırken, farklı modalların taban puanı değerlerine göre belirli içerikleri gösterebileceği durumlarda, modal kullanımının kolaylaştırılmasına yardımcı olur.
"To invoke a dialog modal from a module instead of directly using showModal, you can trigger it via an event handler or a function within the module that calls showModal indirectly. This approach ensures better separation of concerns and improves the modularity of your code. In a film app, this method would allow you to manage modal dialogs more efficiently across different components or features."