首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在单击按钮后从表单中获取结果(JavaScript和HTML)

如何在单击按钮后从表单中获取结果(JavaScript和HTML)
EN

Stack Overflow用户
提问于 2018-08-17 04:35:20
回答 2查看 359关注 0票数 2

我对HTML和Javascript非常陌生,我正在尝试做这个简单的程序,在这个程序中,我填写一个表单,当我点击“提交”时,结果会被保存(无论是文本文件中的,警报中的,还是其他的,我只想能够保存结果)。到目前为止,我有以下代码:

    function myFunction(){
        var Gender = document.getElementbyName('Gender').value;
        var Status = document.getElementbyName('Status').value;
        alert(Gender, Status);
    }
                h2 {margin-top: 50px}
                input {margin-top: 50px}
                label {display: inline-block; width: 180px; text-align: left; margin-top: 15px}
        <h1>Form</h1>
        <form enctype="multipart/form-data" method="post">  

             <h2>Enter: </h2>

                <label> Gender: </label>               
                    <select name='Gender'>                
                        <option value='Female' selected>Female</option>
                        <option value='Male'>Male</option>               
                    </select><br />                
                <label>Status: </label>                
                    <select name='Status'>               
                        <option value='Single' selected>Single</option>
                        <option value='Married'>Married</option>             
                    </select><br />                     
  <input type = 'Submit' id="Submit" onclick="myFunction()" value = 'Submit'>          
  </form>

页面将按我所需的方式显示,但当我填充值并单击submit时,什么也没有发生。我做错了什么?再说一次,我在这方面非常新手,所以我还没有很好地掌握所有基本的东西。我在网上查找了一些解决方案,但到目前为止还没有有效的解决方案,而且大多数解决方案似乎都是针对“文本”而不是“选项”的,所以我想知道是否有办法处理这种输入。

任何帮助或参考都是很棒的。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2018-08-17 04:42:58

你只想稍微调整一下你的javascript,让它停留在你的例子中。它是getElementsByName (注意S),因为可以有多个,所以您将得到第0个。

<script>
function myFunction(){
var Gender = document.getElementsByName('Gender')[0].value;
var Status = document.getElementsByName('Status')[0].value;
alert(Gender + ' - '+ Status);
}
</script>

http://jsfiddle.net/cdwz6x0n/4/

票数 1
EN

Stack Overflow用户

发布于 2018-08-17 04:44:19

您遇到的问题是document.getElementbyName不存在,但是document.getElementsByName是您可以使用的替代方案。另外,由于您的输入被设置为type="submit",它试图将您的表单数据提交到一个未设置的位置,因此我将其更改为type="button"

function myFunction() {
  var Gender = document.getElementsByName('Gender')[0].value;
  var Status = document.getElementsByName('Status')[0].value;
  alert('Gender: ' + Gender + ', Status: ' + Status);
}
h2 {
  margin-top: 50px
}

input {
  margin-top: 50px
}

label {
  display: inline-block;
  width: 180px;
  text-align: left;
  margin-top: 15px
}
<h1>Form</h1>

<h2>Enter: </h2>

<form enctype="multipart/form-data" method="post">
  <label> Gender: </label>
  <select name='Gender'>
    <option value='Female' selected>Female</option>
    <option value='Male'>Male</option>
  </select><br />
  <label>Status: </label>
  <select name='Status'>
    <option value='Single' selected>Single</option>
    <option value='Married'>Married</option>
  </select><br />
  <input type='button' id="Submit" onclick="myFunction()" value='Submit'>
</form>

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

https://stackoverflow.com/questions/51884969

复制
相关文章

相似问题

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