why cant i get value of input from DOM code example

Example 1: get value javascript

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Get Text Input Field Value in JavaScript</title>
</head>
<body>
    <input type="text" placeholder="Type something..." id="myInput">
    <button type="button" onclick="getInputValue();">Get Value</button>
    
    <script>
        function getInputValue(){
            // Selecting the input element and get its value 
            var inputVal = document.getElementById("myInput").value;
            
            // Displaying the value
            alert(inputVal);
        }
    </script>
</body>
</html>

Example 2: js get value from form input

// having form like this

<form>
  <div>
  	<label for="number">Give me number</label>
	<input type="number" id="number">
  </div>
  <div>
    <button class="btn">Click</button>
  </div>
</form>

// this is how u get a value (number)
document.querySelector("form").addEventListener("submit", get_number);
function get_number(e){
    const n = document.getElementById("number").value;
    console.log('n:', n)
    e.preventDefault();
}