首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >提示用户输入,但在表单上显示输入

提示用户输入,但在表单上显示输入
EN

Stack Overflow用户
提问于 2020-10-20 01:17:46
回答 2查看 42关注 0票数 0

早上好,

有人知道如何更正下面的代码吗?首先,我提示用户输入变量firstsecond,但未能在表单上显示它们。其次,当用户单击Determine the larger number按钮时,它应该运行位于function determineLarge(){下的ifelse if语句,但它无法运行。我很抱歉,因为我正在大学里学习如何编写这门语言。谢谢你的帮助。

代码语言:javascript
复制
 <script>
        function determineLarge(){

        let first = prompt ("Enter the first number.");
            first= document.myForm.first.value;
    
        let second = prompt("Enter the second number.");
            second =document.myForm.first.value;

            first = parseFloat(first);
            second = parseFloat(second);

            let message = "";

            if (first <0 || second <0){
                message = "You can't use negative numbers.";
                }
            else if (first > second){
                message = "The second number" + "(" + second + ")" + " is smaller.";
                }
                else if (second > first) {
                    message = "The first number" + "(" + first + ")" + " is smaller.";
                }
                else if (first == second || second==first){
                    message = "The first number" + "(" + first + ")" + " is smaller.";
                }

        document.getElementById("results").innerHTML = message;
        }        
</script>
</head>

<body>
    <h1>Gary's Smaller of Two Numbers</h1>
    <form name="myForm">
    <p> Enter the first number</p>
    <input type="number" name="first" value="" onclick="javascript:determineLarge();">
    <p>Enter the second number</p>
    <input type="number" name="second" value="" onclick="javascript:determineLarge();">
    <button type="button" onclick="determineLarge();">Determine the larger number</button>
     </form>
    <div id="results"> </div>

</body>
EN

回答 2

Stack Overflow用户

发布于 2020-10-20 01:27:20

我将值的获取和处理分成了两个函数。

我将提示符放在一个while循环中,这样您就必须输入一个大于零的实际值。

另外,您可以通过保留变量名的第一个来覆盖第一个和第二个变量,例如: first = ....而不是document.myform.value == first等等。

代码语言:javascript
复制
first = -1;
second = -1;

function getValues(){
     while(isNaN(first) || first == "" || first < 0){
        first = prompt ("Enter the first number.");
     }
     
     while(isNaN(second) || second == "" || second < 0){
        second = prompt ("Enter the second number.");
     }
     
     document.myForm.first.value = first;
     document.myForm.second.value = second;
}

function determineLarge(){
            let message = "";

            if (first > second){
                message = "The second number" + "(" + second + ")" + " is smaller.";
                }
                else if (second > first) {
                    message = "The first number" + "(" + first + ")" + " is smaller.";
                }
                else if (first == second || second==first){
                    message = "The first number" + "(" + first + ")" + " is smaller.";
                }

        document.getElementById("results").innerHTML = message;
        }
代码语言:javascript
复制
<h1>Gary's Smaller of Two Numbers</h1>
    <form name="myForm">
    <p> Enter the first number</p>
    <input type="number" name="first" value="" onclick="javascript:getValues();">
    <p>Enter the second number</p>
    <input type="number" name="second" value="" onclick="javascript:getValues();">
    <button type="button" onclick="determineLarge();">Determine the larger number</button>
     </form>
    <div id="results"> </div>

票数 2
EN

Stack Overflow用户

发布于 2020-10-20 01:32:51

我删除了提示符,以便可以使用输入。不需要在文本输入上调用onClick。

代码语言:javascript
复制
<script>
  function determineLarge(myForm) {

    var first = myForm.first.value;

    var second = myForm.second.value;

    console.log(first, second)

    first = parseFloat(first);
    second = parseFloat(second);

    let message = "";

    if (first < 0 || second < 0) {
      message = "You can't use negative numbers.";
    } else if (first > second) {
      message = "The second number" + "(" + second + ")" + " is smaller.";
    } else if (second > first) {
      message = "The first number" + "(" + first + ")" + " is smaller.";
    } else if (first == second || second == first) {
      message = "The first number" + "(" + first + ")" + " is smaller.";
    }

    document.getElementById("results").innerHTML = message;
  }
</script>
</head>

<body>
  <h1>Gary's Smaller of Two Numbers</h1>
  <form name="myForm">
    <p> Enter the first number</p>
    <input type="number" name="first" value="">
    <p>Enter the second number</p>
    <input type="number" name="second" value="">
    <button type="button" onclick="determineLarge(this.form);">Determine the larger number</button>
  </form>
  <div id="results"> </div>

</body>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64432249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档