Weird code function

i have a problem with the i < (long code) the problem is it doesn't take the number so for example if a put it to i < 4 it works but the other way doesn't here's the code: <form action=""> <input type="number" name="elements" class="input" placeholder="Number Of Elements" /> <input type="text" name="texts" class="input" placeholder="Elements Text" /> <select name="type" class="input"> <option value="Div">Div</option> <option value="Section">Section</option> </select> <input type="submit" name="create" value="Create" /> <div class="results"></div> </form>
let numberOfElements = document.querySelector("[name='elements'")
let elementsText = document.querySelector(`[name='texts'`)
let elementsType = document.querySelector("[name='type'")
let createBtn = document.querySelector("[name='create'")
let results = document.querySelector(".results")
// Creation

let valueHolder = numberOfElements.addEventListener("input",() => numberOfElements.value)


createBtn.addEventListener("click",function (preventor) {
for (let i = 0 ;i < numberOfElements.addEventListener("input",() => numberOfElements.value) ;i++) {
let divCreation = document.createElement("div")
results.appendChild(divCreation)
}
preventor.preventDefault()
}
)
let numberOfElements = document.querySelector("[name='elements'")
let elementsText = document.querySelector(`[name='texts'`)
let elementsType = document.querySelector("[name='type'")
let createBtn = document.querySelector("[name='create'")
let results = document.querySelector(".results")
// Creation

let valueHolder = numberOfElements.addEventListener("input",() => numberOfElements.value)


createBtn.addEventListener("click",function (preventor) {
for (let i = 0 ;i < numberOfElements.addEventListener("input",() => numberOfElements.value) ;i++) {
let divCreation = document.createElement("div")
results.appendChild(divCreation)
}
preventor.preventDefault()
}
)
26 Replies
lko
lko7d ago
please send your code with ```js
عبد الحي
sorry i didn't understand
lko
lko7d ago
```js code ``` Ayways what do you think this do?
numberOfElements.addEventListener("input",() => numberOfElements.value)
numberOfElements.addEventListener("input",() => numberOfElements.value)
عبد الحي
i have an input in the html and this should get its value
عبد الحي
I'm trying to do like this
No description
lko
lko7d ago
No, .addEventlistener creates a listener, in your case of the input, so you're basically saying if i is less than listener, which doesnt make any sense, listener is not a number
عبد الحي
yes that's why there's a .value at the end of it so i only get the value out of it
lko
lko7d ago
Yes but it doesnt return the value
عبد الحي
why
lko
lko7d ago
because addEventListener just creates a listener, doesnt return anything
عبد الحي
ok then do i do it i need a method that gives me the live value of the input and addEventListener is the only one who can do it like this
lko
lko7d ago
let numberOfElements = document.querySelector("[name='elements']") // added missing ']'
let elementsText = document.querySelector(`[name='texts']`) // again
let elementsType = document.querySelector("[name='type']") // again
let createBtn = document.querySelector("[name='create']") // again
let results = document.querySelector(".results")

createBtn.addEventListener("click", (e) {
e.preventDefault()
const numberOfElements = numberOfElements.value
for (let i = 0; i < numberOfElements; i++) {
let divCreation = document.createElement("div")
results.appendChild(divCreation)
}
})
let numberOfElements = document.querySelector("[name='elements']") // added missing ']'
let elementsText = document.querySelector(`[name='texts']`) // again
let elementsType = document.querySelector("[name='type']") // again
let createBtn = document.querySelector("[name='create']") // again
let results = document.querySelector(".results")

createBtn.addEventListener("click", (e) {
e.preventDefault()
const numberOfElements = numberOfElements.value
for (let i = 0; i < numberOfElements; i++) {
let divCreation = document.createElement("div")
results.appendChild(divCreation)
}
})
عبد الحي
is this possible ???
lko
lko7d ago
yep, you can just take the value by doing numberOfElements.value
عبد الحي
it's not working
lko
lko7d ago
does it give you an error?
عبد الحي
yes
lko
lko7d ago
what
lko
lko7d ago
it's just missing a ) at line 29 I dont have the full code so I cant help you
عبد الحي
no i just added the => ok there's another problem
lko
lko7d ago
const numberOfElements2 = numberOfElements.value
for (let i = 0; i < numberOfElements2; i++) {
const numberOfElements2 = numberOfElements.value
for (let i = 0; i < numberOfElements2; i++) {
عبد الحي
OHHHHHHHHHHHHMYYYYYYYYGOOOOOOOOOOD IT WORKED THANK YOU SIR
lko
lko7d ago
Do you understand what it did? and how it works
عبد الحي
probably yes