我正在使用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]。价值
如果有人知道解决方案,请帮助我。
由于
答案 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.php
和method='get'
因此,一旦您提交表单,所有数据将通过get方法发送到您的php页面(在本例中为index.php),您可以使用$_GET['foobar']
获取数据。