我有以下(简化的)HTML代码,其中包含两种形式:
<html>
<form name="form1" method="get">
Name: <select name="name" type="text">
<option selected>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</select>
</form>
<form name="form2" method="post" action="../cgi/test.pl">
City: <input name="city" type="text"/>
Country: <input name="country" type="text"/>
<input value="Click Me!" type="submit"/>
</form>
</html>
因此,单击提交按钮时,将执行CGI脚本,我希望该脚本也能够提取在第一个表单的下拉列表中选择的名称。关于如何实现这一目标的任何建议?在较早的问题中,我只是发现了类似的内容,但不适合我的问题(如果我没有记错的话...)。
我已经创建了一个片段,该片段可以根据需要工作,必要时我已经在注释中做了解释。看看这是否适合您。
<form name="form1" method="get">
Name:
<select name="name" type="text" onchange="document.querySelector('#any_id').value = this.value" style="width: 50%">
<!-- trigger onchange event and change the value of hidden field in the second form -->
<option selected>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</select>
</form>
<hr>
<form name="form2" method="post" action="../cgi/test.pl">
<!--<input type="hidden" name="any_name" id="any_id" value="Your-default-value"> -->
<!-- Make this field hidden↓↓, here only for demo purpose-->
Hidden Field: <input type="text" name="any_name" id="any_id" value="A"><br><br>
<!-- Give it a default value from your select element(which is A) -->
City: <input name="city" type="text" /><br><br> Country: <input name="country" type="text" /><br><br>
<input value="Click Me!" type="submit" />
</form>
然后从隐藏字段的name
(此处为any_name
)中获取值。