Javascript 从不同类型的表单中获取结果
因此,我创建了一个from,我希望在用户按下submit按钮时,将用户选择的选项显示在一个有序列表中。我已经尝试了我能找到的一切,我得到的所有三个变量“info”的结果都是未定义的。如果你能帮我,我会很高兴的谢谢你 下面是为表单编写的te代码Javascript 从不同类型的表单中获取结果,javascript,html,Javascript,Html,因此,我创建了一个from,我希望在用户按下submit按钮时,将用户选择的选项显示在一个有序列表中。我已经尝试了我能找到的一切,我得到的所有三个变量“info”的结果都是未定义的。如果你能帮我,我会很高兴的谢谢你 下面是为表单编写的te代码 你最喜欢的音乐类型是什么 流行音乐 岩石 古典的 说唱/嘻哈 电子的 国 另外 我不听音乐!(WUT??) 你通常如何通勤到UVic? 公共汽车 驾驶 自行车 步行 爬行 飞 你最喜欢的意大利面酱汁是什么? 提交 重置 下面是为函数“resul
你最喜欢的音乐类型是什么
流行音乐
岩石
古典的
说唱/嘻哈
电子的
国
另外
我不听音乐!(WUT??)
你通常如何通勤到UVic?
公共汽车
驾驶
自行车
步行
爬行
飞
你最喜欢的意大利面酱汁是什么?
提交
重置
下面是为函数“result()”编写的javascript,该函数假定在按下submit按钮时工作
函数结果(){
var info=新数组();
信息[0]=document.getElementById(“m”).value;
info[1]=document.getElementById(“t”).value;
info[2]=document.getElementById(“p”).值;
info.sort();
var mySubmit=document.getElementById(“myResult”);
变量y=“”;
对于(var i=0;i事实上,您的代码中存在一些问题。我已经纠正了一些问题,下面是您希望的工作
您不应该获取div的值,div元素具有NOTvalue属性。这是代码的主要问题。此外,您不必分隔表单,所有输入都可以包含在一个表单中
此外,我还添加了JQuery以简化作业,例如,获取单选按钮的值:
info[0]=$('input[name=“genre”]:checked').val();
我不会为你解决这个问题,因为你根本无法自己学习,所以问题如下:
不需要多个表单
您尚未关闭任何表单(并非需要多个表单),尽管这不是错误的原因
在javascript中,您试图获取除法的值。
不是表单字段/元素,因此它没有值。因此,结果是未定义
我的建议是,检查一些关于HTML表单的基本教程,并正确理解它们。检查一些示例。否则,除了试图从没有任何值的元素中获取数据值之外,您的javascript基本上是正确的
我希望此有助于在标记中,使用
而不是
1)不需要多个表单2)(div没有值)3)
<form id="music">
<div id="m">
<p>What is your favourite genre of music?</p>
<input type="radio" name="genre" value="Pop" id="Pop" checked> <label for ="Pop"> Pop </label>
<input type="radio" name="genre" id="Rock" > <label for ="Rock"> Rock </label>
<input type="radio" name="genre" id="Classical"> <label for ="Classical"> Classical </label>
<input type="radio" name="genre" id="Rap/HipHop" > <label for ="Rap/HipHop"> Rap/HipHop </label>
<input type="radio" name="genre" id="Electronic" > <label for ="Electronic"> Electronic </label>
<input type="radio" name="genre" id="Country" > <label for ="Country"> Country </label>
<input type="radio" name="genre" id="Other" > <label for ="Other"> Other </label>
<input type="radio" name="genre" id="don't listen to music" > <label for ="don't listen to music"> I don't listen to music! (WUT??) </label>
</div>
</br>
</br>
How do you usually commute to UVic?
<div id="t">
<form id="trans">
<select name="commute">
<option value="Bus"> Bus </option>
<option value="Drive"> Drive </option>
<option value="Bike"> Bike </option>
<option value="Walk"> Walk </option>
<option value="Crawl"> Crawl -__- </option>
<option value="Fly"> Fly?!! </option>
</select>
</div>
</br>
<div id="p">
<form id="pasta">
What is your favourite type of sauce on pasta?
<input type="text" name="sauce" value="Sauce boss">
</div>
</br>
<button type="button" onclick="result()"> Submit </button>
<button type="reset" value="Reset">Reset</button>
<ol id="myResult"> </ol>
function result() {
var info = new Array();
info[0] = document.getElementById("m").value;
info[1] = document.getElementById("t").value;
info[2] = document.getElementById("p").value;
info.sort();
var mySubmit = document.getElementById("myResult");
var y = " ";
for (var i=0; i<info.length; i++)
{
var x = info[i];
y = y + "<ol>" + x + "</ol>";
}
mySubmit.innerHTML = y;
}