1

我目前在提交动态表单时无法获取某些输入字段。

如果选择了该州的某个字段,则启用城市/学校字段(因为我们只需要从特定州的学生而不是其他州的学生那里收集信息)。

HTML 代码:

<form name="email" method="post" action="...email.php">
. 
. 
. 
<div id="cityDiv" class="row">
<h5 id="c1" class="mandatory">City:</h5>
<select id="c2" class="inputColumn" onchange="fillSchoolDropdown();" name="extra_city">
  --select options ---  
 </div>
 <div id="schoolDiv" class="row">
 <h5 id="sch1" class="mandatory">School:</h5>
 <input id="extra_school" class="inputColumn" type="text" name="extra_school">
 </div>

Javascript:

   if(verify(document.email)){ 
     .
     .
     .
   var school = document.getElementById("extra_school").value;
   var citySelect=document.getElementById("extra_city");
   var city=citySelect.options[citySelect.selectedIndex].text;

我要么得到 null CitySelect,要么表单成功验证,但不知何故……尽管在表单中输入了什么,两者的最终结果仍然是“”。

我在这里做错了什么?

4

2 回答 2

1
var citySelect=document.getElementById("extra_city");

应该:

var citySelect=document.getElementById("c2");

因为那是身份证。您正在尝试选择nameattr。

select或者您可以更改元素的 id :

<select id="extra_city" class="inputColumn" onchange="fillSchoolDropdown();" name="extra_city">
于 2012-04-04T21:50:17.593 回答
0

您的选择元素的 id 为“c2”,但您试图通过其名称“extra_city”调用

var citySelect=document.getElementById("c2");
于 2012-04-04T21:50:43.697 回答