[ bobans72 @ 23.01.2020. 13:01 ] @
Pozdrav ...

Kako da uradim izmenu u ovoj dole skripti ne bude fiksno (chars = 5, segments = 5) nego da može da se u 2 inputa izvrši unos ovih brojeva ili bilo kojih drugih ?
Ovo sve radi ali sa fiksno potrebni su mi korisnički unosi (chars i segments budu promenljivi to jest da se u dva inputa vrše promene brojeva.

Evo skripte:

Code:

        (function() {
        function getRandomInt( min, max ) {
        return Math.floor( Math.random() * ( max - min + 1 ) ) + min;
        }
        function generateSerialKey() {
        var tokens = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",
            chars = 5,
                segments = 5,
            keyString = "";
        for( var i = 0; i < segments; i++ ) {
             var segment = "";
        for( var j = 0; j < chars; j++ ) {
             var k = getRandomInt( 0, 35 );
             segment += tokens[ k ];
            }
            keyString += segment;
            if( i < ( segments - 1 ) ) {
            keyString += "-";
            }
            }
            return keyString;
        }
        document.addEventListener( "DOMContentLoaded", function() {
        var generate = document.querySelector( "#generate" ),
        output = document.querySelector( "#output" );
        generate.addEventListener( "click", function() {
        var serialKey = generateSerialKey();
        output.innerHTML = serialKey;
        }, false);
        });
        })();



[ mjanjic @ 23.01.2020. 14:31 ] @
Ako misliš na unos od strane korisnika, možeš da koristiš "prompt" metodu: https://www.w3schools.com/jsref/met_win_prompt.asp
[ Deunan @ 23.01.2020. 15:04 ] @
Dodaj dva inputa:

<input type="number" id="chars" value="5" />
<input type="number" id="segments" value="5" />

Code:

(function() {
       (function () {
        function getRandomInt(min, max) {
            return Math.floor(Math.random() * (max - min + 1)) + min;
        }

        function generateSerialKey(chars, segments) {
            var tokens = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", keyString = "";
            for (var i = 0; i < segments; i++) {
                var segment = "";
                for (var j = 0; j < chars; j++) {
                    var k = getRandomInt(0, 35);
                    segment += tokens[k];
                }
                keyString += segment;
                if (i < (segments - 1)) {
                    keyString += "-";
                }
            }
            return keyString;
        }

        document.addEventListener("DOMContentLoaded", function () {
            var generate = document.querySelector("#generate"),
                 output = document.querySelector("#output"),
                 chars = document.querySelector("#chars"),
                 segments = document.querySelector("#segments");

            generate.addEventListener("click", function () {
                var serialKey = generateSerialKey(chars.value, segments.value);
                output.innerHTML = serialKey;
            }, false);
        });
    })();
[ bobans72 @ 23.01.2020. 15:07 ] @
Hvala na odgovoru.

Mislio sam na HTML Input unos pa sam pokušao ovako nešto ali tako ne prikazuje ništa u outputu nešto nije kako treba:

JavaScript
Code:



       (function() {
        function getRandomInt( min, max ) {
        return Math.floor( Math.random() * ( max - min + 1 ) ) + min;
        }
        function generateSerialKey(chars, segments) {
        var tokens = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",
            
            keyString = "";
        for( var i = 0; i < segments; i++ ) {
             var segment = "";
        for( var j = 0; j < chars; j++ ) {
             var k = getRandomInt( 0, 35 );
             segment += tokens[ k ];
            }
            keyString += segment;
            if( i < ( segments - 1 ) ) {
            keyString += "-";
            }
            }
            return keyString;
        }
        document.addEventListener( "DOMContentLoaded", function() {
        var chars = document.getElementById( "#chars" ),
        segments = document.getElementById( "#segments" ),
        generate = document.querySelector( "#generate" ),
        output = document.querySelector( "#output" );
        generate.addEventListener( "click", function() {
        var serialKey = generateSerialKey();
        output.innerHTML = serialKey;
        }, false);
        });
        })();


HTML
Code:

<!DOCTYPE html>
<html lang="sr" >
<head>
  <meta charset="UTF-8"/>
  <title>Serial Generator</title>
  

</head>
<body>


<input type="number"  id="chars" name="chars"/>
<input type="number" id="segments" name="segments"/>

<p><button id="generate">Generate</button></p>

<code id="output"></code>


  <script  src="script.js"></script>

</body>
</html>

[ Deunan @ 23.01.2020. 15:24 ] @
Zameni samo ovu liniju:
Code:
var serialKey = generateSerialKey();


sa ovim:
Code:
 var serialKey = generateSerialKey(chars.value, segments.value);


Pogledaj post iznad, napisali smo skoro isti primer u slicno vreme, pa nisi ni primetio.
[ bobans72 @ 23.01.2020. 15:26 ] @
Probao ne radi ne prikazuje ništa:
Html
Code:

<!DOCTYPE html>
<html lang="sr" >
<head>
  <meta charset="UTF-8"/>
  <title>Serial Generator</title>
  

</head>
<body>


<input type="number"  id="chars" name="chars" value="5"/>
<input type="number" id="segments" name="segments" value="5" />
<p><button id="generate">Generate</button></p>

<code id="output"></code>


  <script  src="script.js"></script>

</body>
</html>



JavaScript

Code:

(function() {
       (function () {
        function getRandomInt(min, max) {
            return Math.floor(Math.random() * (max - min + 1)) + min;
        }

        function generateSerialKey(chars, segments) {
            var tokens = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", keyString = "";
            for (var i = 0; i < segments; i++) {
                var segment = "";
                for (var j = 0; j < chars; j++) {
                    var k = getRandomInt(0, 35);
                    segment += tokens[k];
                }
                keyString += segment;
                if (i < (segments - 1)) {
                    keyString += "-";
                }
            }
            return keyString;
        }

        document.addEventListener("DOMContentLoaded", function () {
            var generate = document.querySelector("#generate"),
                 output = document.querySelector("#output"),
                 chars = document.querySelector("#chars"),
                 segments = document.querySelector("#segments");

            generate.addEventListener("click", function () {
                var serialKey = generateSerialKey(chars.value, segments.value);
                output.innerHTML = serialKey;
            }, false);
        });
    })();

[ Deunan @ 23.01.2020. 15:29 ] @
Imam gresku u kopiranju, 2 puta sam stavio

(function() {
(function () {

izbrisi jednu:
Code:

(function () {
        function getRandomInt(min, max) {
            return Math.floor(Math.random() * (max - min + 1)) + min;
        }

        function generateSerialKey(chars, segments) {
            var tokens = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", keyString = "";
            for (var i = 0; i < segments; i++) {
                var segment = "";
                for (var j = 0; j < chars; j++) {
                    var k = getRandomInt(0, 35);
                    segment += tokens[k];
                }
                keyString += segment;
                if (i < (segments - 1)) {
                    keyString += "-";
                }
            }
            return keyString;
        }

        document.addEventListener("DOMContentLoaded", function () {
            var generate = document.querySelector("#generate"),
                 output = document.querySelector("#output"),
                 chars = document.querySelector("#chars"),
                 segments = document.querySelector("#segments");

            generate.addEventListener("click", function () {
                var serialKey = generateSerialKey(chars.value, segments.value);
                output.innerHTML = serialKey;
            }, false);
        });
    })();
[ bobans72 @ 23.01.2020. 15:31 ] @
Ovaj kod što sam sada postavio to mi ne radi video sam i zamenio sa ovim (var serialKey = generateSerialKey(chars.value, segments.value);) ali ne radi.
[ bobans72 @ 23.01.2020. 15:35 ] @
I ja nisam primetio samo sam prekopirao i usresredio sam se sa ovim što ste vi prepravili i nisam obratio pažnju. Tako da sada sve radi.
Hvala puno na rešenju.
[ bobans72 @ 23.01.2020. 20:24 ] @
Kako da prikažem u inputu: <input type="text" id="output"/> samo prikazuje ovako <p id="output"></p> ?
Molim ponovo za pomoć .
[ Milan Kragujevic @ 24.01.2020. 07:26 ] @
Evo:



DOWNLOAD ZIP
[ bobans72 @ 24.01.2020. 08:09 ] @
Hvala na odgovoru !

Tako sam i ja stavio vrednost na output ali to nije htelo da radi dok nisam pobrisao celu istoriju jel je upamtilo i nije htelo da prihvati drugu promenu jer i meni je bilo čudno
zašto nije htelo da prihvati vrednost na outputu pa sam ovde potražio pomoć jer sam mislio da postoji neka druga greška jer ne poznajem baš najbolje javascript više php.