我无法弄清楚为什么它不跟踪CompanyType的值。如果我从验证中删除CompanyType块,则效果很好。它甚至成功验证了CompanyName,但在CompanyType上却失败了。

下面是代码:

<script type="text/javascript>

//Check Company Name
if (document.getElementById("CompanyName").value == "")
{
     alert("Please enter company name");
     document.getElementById("CompanyName").focus();
     return false;
}

//Check Company Type                            alert(document.getElementById("CompanyType").value);
if (document.getElementById("CompanyType").value.substr(0,6) == "Select")
{
     alert("Please select company type");
     document.getElementById("CompanyType").focus();
     return false;
}
</Script>


文件中的HTML代码中遵循以下几行:

<td align="left" valign="top">
<input maxlength="40" size="22" name="CompanyName" id="CompanyName" style="width:150px;">
</td>
</tr>
<tr>
<td height="38" colspan="2" valign="middle" id="form">
<span class="red">*</span>
<span class="style2">Company Type:</span>
</td>

<td align="left">
<select id=" " class="style3" size="1" name="CompanyType" style="width:150px;">                                                                      <option value="" selected="selected">Select One</option>                                                                               </select></td>

最佳答案

您在CompanyType select中缺少id属性

<select id=" " class="style3" size="1" name="CompanyType" style="width:150px;">
           ^^^


应该

<select id="CompanyType" class="style3" size="1" name="CompanyType" style="width:150px;">


大卫·多沃德(David Dorward)对于上述顺序有一点。
HTML首先,<script>之后。

最好在文档准备好后执行JS。考虑使用jQuery

09-26 19:16