请查看此 pastebin 中的代码:http: //pastebin.com/5gKwb7gi
这是相当多的代码,但我认为这里的所有大师都会理解它!
基本上我自己困惑的是,我有一个搜索表单,然后我创建了一个动态的高级搜索表单。
我刚刚完成,现在我试图在高级搜索查询中包含简单搜索条件(如果已填写),但显然这些变量从未设置,因为从未提交简单搜索表单:S
有没有人对如何做有任何提示、提示或想法?不确定我是否要合并表格,因此我将不胜感激一些建议和意见。
谢谢。
请查看此 pastebin 中的代码:http: //pastebin.com/5gKwb7gi
这是相当多的代码,但我认为这里的所有大师都会理解它!
基本上我自己困惑的是,我有一个搜索表单,然后我创建了一个动态的高级搜索表单。
我刚刚完成,现在我试图在高级搜索查询中包含简单搜索条件(如果已填写),但显然这些变量从未设置,因为从未提交简单搜索表单:S
有没有人对如何做有任何提示、提示或想法?不确定我是否要合并表格,因此我将不胜感激一些建议和意见。
谢谢。
如果有人读到这个问题并想知道我是如何解决它的,我使用隐藏输入和一些 JQuery 将值从简单搜索表单复制到隐藏输入,如下所示:
<input type="hidden" name="hiddenfilename" id="hiddenfilename"/>
<input type="hidden" name="hiddenfilesize_min" id="hiddenfilesize_min"/>
<input type="hidden" name="hiddenfilesize_max" id="hiddenfilesize_max"/>
//etc
<script type="text/javascript">
$("#filename").change(copyFilename);
$("#filesize_min").change(copyFileSizeMin);
$("#filesize_max").change(copyFileSizeMax);
function copyFilename()
{
var valueToCopy=$("#filename").val();
$("#hiddenfilename").val(valueToCopy);
}
function copyFileSizeMin()
{
var valueToCopy=$("#filesize_min").val();
$("#hiddenfilesize_min").val(valueToCopy);
}
function copyFileSizeMax()
{
var valueToCopy=$("#filesize_max").val();
$("#hiddenfilesize_max").val(valueToCopy);
}
</script>
我不会阅读 600 行代码来帮助你。使示例更小,以便您可以用一些单词而不是 50 行来表达它。这总是可能的!无论如何,我在没有代码的情况下从我在这里阅读的内容中回答。
如果您想获取多页表单的数据,您有多种选择。您可以评估表单服务器端的每个页面,然后在第二步中将它们放回您想要的位置(对变量使用隐藏的导入标签,不应呈现)。另一种选择是将值放入 cookie 中,并在需要时从那里获取。您还可以根据用户输入使用 Javascript 更改表单的结构,然后在他完成后发送整个内容(可能是每个 AJAX)。最基本但通常也是最优雅的一个是第一个。出于学习目的,我建议这样做。结合cookies和AJAX应该是最高级别,也是最常用的一种,也是最复杂的一种,