Javascript 需要在两种形式的字段上使用java脚本函数

Javascript 需要在两种形式的字段上使用java脚本函数,javascript,html,forms,Javascript,Html,Forms,嘿,我需要使用java脚本函数来验证两种形式的字段。 基本上,标准是当用户选择表单名称时,必填字段必须在下一个表单上可见。。我需要问一下,我是否可以对不同页面上的表单使用java脚本函数。下面是我的代码 表格rpt的代码 <html> <head> <script type="text/javascript" src="javascript/formvalidations.js"></script> </head> <form n

嘿,我需要使用java脚本函数来验证两种形式的字段。 基本上,标准是当用户选择表单名称时,必填字段必须在下一个表单上可见。。我需要问一下,我是否可以对不同页面上的表单使用java脚本函数。下面是我的代码

表格rpt的代码

<html>
<head>
<script type="text/javascript" src="javascript/formvalidations.js"></script>
</head>
<form name="rpt" method="post" action="">
    <label>Form Name </label>
    <select id="formname" name="formname"> 
    <option value="" selected="selected">--Please Select Form Name--</option>
    <option value="1">1</option>
    <option value="2">2</option>
</select><br />
<input id="ok" type="submit" name="ok" value="OK" onclick="return chkform();" />
</form>
</html>

我在reportform中有5个字段。我需要必填字段在reportform中可见。假设用户在rpt中选择值1,则字段1、2和3必须可见。

这一行出现语法错误:

elseif (formname == "2"){
JavaScript没有
elseif
作为单个单词,您需要插入空格:

else if (formname == "2"){
此外,是一种
文档
的方法,而不是单个html元素,因此请使用:

document.getElementById("1").style.display="inline";
// and so forth

如果您使用浏览器的JS控制台(例如,在Chrome press F12中),它会向您报告这些错误(它不会告诉您如何修复这些错误,但至少会为您指明正确的方向)

那有什么问题?您是否遇到了错误,或者该代码没有达到预期效果?(您实际上没有问任何问题。)是的,该代码没有达到我预期的效果,在reportform上,所有字段都是可见的(HTML5之前,
id
等数字无效,您的代码中没有doctype?您也知道您可以执行
var report=document.forms.reportform
,并且会更快更干净。@elclars感谢您的帮助。非常感谢:)您能更新您的问题以显示
reportform
?是否在同一页上?请检查我更新的问题:)请根据我的建议更新您的代码,并采纳Ashwin的建议,将“确定”按钮更改为
type=“button”
,而不是
type=“submit”
,然后让我们知道您是否还有问题。我通过更改“提交到”按钮进行了检查,但现在它不带我到reportform.htmlYes,对不起,我假设您的第二个表单在同一页上。即使除去我指出的JavaScript错误,JavaScript也只能操作当前页面上的字段。最好使用服务器端代码进行条件显示,例如,使用PHP(如Ashwin的回答)或JSP、ASP或您正在使用的任何东西。
document.getElementById("1").style.display="inline";
// and so forth