Random Number Generator

Back to Home

Generate a Random Number

Behind This Webpage


// Function to generate a random number between min and max
function getRandomNumber(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}

// Event listener for the random button
const randomBtn = document.getElementById('random-btn');
randomBtn.addEventListener('click', function() {
    const min = parseInt(document.getElementById('min').value);
    const max = parseInt(document.getElementById('max').value);
    const errorBubbleMessage = document.getElementById('errorBubbleMessage');
    const resultDiv = document.getElementById('result');
    const minInput = document.getElementById('min');
    const maxInput = document.getElementById('max');
    const minError = document.getElementById('min-error');
    const maxError = document.getElementById('max-error');

    let hasError = false;
    let errorMessages = [];

    if (isNaN(min)) {
        hasError = true;
        minInput.classList.add('error-border');
        minError.textContent = 'This field must contain a valid number.';
        minError.classList.remove('hidden');
        errorMessages.push('The minimum field must contain a valid number.');
    } else {
        minInput.classList.remove('error-border');
        minError.classList.add('hidden');
    }

    if (isNaN(max)) {
        hasError = true;
        maxInput.classList.add('error-border');
        maxError.textContent = 'This field must contain a valid number.';
        maxError.classList.remove('hidden');
        errorMessages.push('The maximum field must contain a valid number.');
    } else {
        maxInput.classList.remove('error-border');
        maxError.classList.add('hidden');
    }

    if (!hasError && min > max) {
        hasError = true;
        minInput.classList.add('error-border');
        maxInput.classList.add('error-border');
        minError.textContent = 'Minimum value cannot be greater than maximum value.';
        maxError.textContent = 'Maximum value cannot be less than minimum value.';
        minError.classList.remove('hidden');
        maxError.classList.remove('hidden');
        errorMessages.push('Minimum value cannot be greater than maximum value.');
    }

    if (hasError) {
        const combinedErrorMessage = errorMessages.join(' ').trim();
        errorBubbleMessage.textContent = combinedErrorMessage;
        errorBubbleMessage.classList.add('show');
        setTimeout(() => {
            errorBubbleMessage.classList.remove('show');
        }, 3000);
        resultDiv.textContent = '';
    } else {
        const randomNum = getRandomNumber(min, max);
        resultDiv.textContent = `Random Number: ${randomNum}`;
        const successBubbleMessage = document.getElementById('successBubbleMessage');
        successBubbleMessage.classList.add('show');
        setTimeout(() => {
            successBubbleMessage.classList.remove('show');
        }, 3000);
    }
});
                
Random number generated successfully!