0

我正在使用 PHP + HTML

我有一个表单,其动作定义如下:

1]表单action="index.php?option=com_advertisment&task=keysearch&Itemid=2&catid=this.options[this.selectedIndex].value"

但是当我提交表单时,查询字符串中未显示下拉的选定值。

这意味着this.options[this.selectedIndex].value不是替换为,value而是在查询字符串中出现,如下所示:

http://mydemoserver.com/index.php?option=com_advertisment&task=keysearch&Itemid=2&catid=this.options[this.selectedIndex].value

如果有人知道解决方案,请帮助我。

谢谢

4

2 回答 2

0

看起来您正试图错误地混合 HTML 和 JS。

如果您有<form>标签,只需将所有字段都放在标签内。

如果您希望前三个查询参数对是静态的,您可以将它们写入隐藏<input>标签内。

例如:

<form action = "index.php" method = "GET">

<input type = "hidden" name = "option" value = "com_advertisment" />
<input type = "hidden" name = "task" value = "keysearch" />
<input type = "hidden" name = "Itemid" value = "2" />

<select name = "catid">
    <option value = "1">Some option</option>
    <option value = "2">Another option</option>
</select>

<input type = "submit" />

</form>
于 2012-07-10T07:34:26.800 回答
0

确保您已name为下拉/选择框提供属性。

eg. <select name="foobar"><option value='first'>First</option></select>

并将您的 action 属性更改<form>index.phponly 和method='get'

因此,一旦您提交表单,所有数据将通过 get 方法发送到您的 php 页面(在本例中为 index.php),您可以使用$_GET['foobar'].

于 2012-07-10T07:35:09.897 回答