需要表单操作查询字符串中的下拉选项值

时间:2012-07-10 07:29:56

标签: php javascript jquery html

我正在使用PHP + HTML

我有一个表单,其行为定义如下:

1] Form 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]。价值

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

由于

2 个答案:

答案 0 :(得分: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>

答案 1 :(得分:0)

确保您在下拉列表/选择框中添加了name属性。

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

并将<form>的操作属性更改为仅index.phpmethod='get'

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