我有一个搜索表单,用户可以通过它执行搜索。选中“高级搜索”复选框后,将显示表单的新部分,允许完全自定义搜索。出于多种原因,我决定使用"get“方法发送表单,从而显示url中的所有变量。
问题是,当提交非高级搜索时,来自高级部分的变量仍然使用get方法发送,当不需要它时会产生冗长的URL,因为处理搜索的PHP不使用高级变量。
为了在“高级搜索”复选框未被选中时隐藏高级表单,我将高级表单放在自己的div中,并让JavaScript在未选中复选框时将其style.display设置为"none“,并在复选框被选中时将其重置为默认值。
当“高级搜索”未被选中时,我如何才能最好地只提交表单的一部分?表单中的表单,移除并重写div的内容,而不是简单地隐藏它,或者什么?有没有没人告诉过我的简单窍门?
谢谢!
发布于 2012-05-18 19:46:38
您可能应该使用属性
<input disabled="disabled" ..当您不想提交它们时,在输入字段上
您可以在this article中找到更多信息
您可能需要保留您的"display:none“,因为禁用元素的呈现取决于浏览器。
发布于 2012-05-18 19:40:46
如果您采用执行display:none的部分,并添加一段将所有表单域设置为disabled的部分,那么您将被设置。
发布于 2012-05-18 19:40:58
您可能会使用两种形式,一种用于简单搜索,另一种用于高级搜索。
如果选择了“高级”搜索,则隐藏简单搜索,反之亦然。
https://stackoverflow.com/questions/10651935
复制相似问题