Basically I was trying to make 10*10 grid such that clicking on specific cell by it cell number change all multiple cell color? for example clicking on cell 5 it change all boxes which having multiple of 5 values. For grid I used tailwindcss
Can anyone please tell that why in my code background color of multiple cells is not changing?
const { useState } = React;
function App() {
const [fillcolor, setFillcolor] = useState("");
var items = [];
for (let i = 1; i <= 100; i++) {
items.push(<div onClick={() => changeColor(i)} className="border border-gray-600 text-center">
{i}
</div>)
}
function changeColor(index) {
alert(index);
setFillcolor("yellow");
for (var i = 0; i < items.length; i++) {
if ((i + 1) % index === 0) {
items[i] = <div style={{ backgroundColor: fillcolor }} className="border border-gray-600 text-center">
{(i + 1)}
</div>
}
}
console.log(items[0]);
}
return (
<div className="App">
<div className="container">
<div className="grid grid-cols-10 grid-rows-10">
{items}
</div>
</div>
</div>
);
}
ReactDOM.render(
<App />,
document.getElementById("root")
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.8.4/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.8.4/umd/react-dom.production.min.js"></script>
<div id="root"></div>