Skip to content
Advertisement

Best way to create new div based on a specified length of elements?

Sorry if the question doesn’t make sense, mainly because it’s hard to explain what I’m trying to accomplish so I will try my best to make you understand.

I have an inventory system that when receiving items by scanning their serial numbers, my application lists the serial numbers that were scanned as they come in. What I would like to accomplish ideally is that say after every 3 serial numbers that are scanned my application should create a new div and essentially start a new line of scanned serial numbers, if that makes sense.

Here is a picture of what I would like to accomplish.

enter image description here

Right now I just have it working where as a serial number is scanned in, it goes accross the screen and they just keep adding to the right of that serial number.

Here is a snippet of my RecieveItems.js

JavaScript

My initial thought was that I create an if statement that checked if the length of the scannedItems % 3 was equal to zero and then create a new div, but it didn’t work they way that I thought it would.

If anyone has any ideas on how I could accomplish this, that would be much appreciated. Thanks!

Advertisement

Answer

Make another var “serial group”. Make another counter j=1 outside of your loop. In the loop add serial to serial group, then if j is 3 push your div of serials onto serials and reset j to 1. All this said, you’re better off using CSS to accomplish this formatting … here’s a css example: Outside of loop:

JavaScript

Inside of loop (note the bar character deletion):

JavaScript
Advertisement