有没有办法同时提交表格和链接?

时间:2011-09-07 18:16:53

标签: php jquery ajax zend-framework

我在页面上有一个搜索表单,其中包含用于缩小结果的复选框,我的目标是在用户更改页面时“保留”表单的内容(已选中的复选框等)(有一个Zend为searc结果处理makinbg页面的paginator。)

我在$ _SESSION中使用一个名为formInv的变量来保存$ _POST的内容但是在这种特殊情况下我必须在填写$ _POST之后取消设置它因为我不希望它再次过来如果我浏览网站上的其他页面。

我得到的想法是在paginator上放置一个处理程序,它会调用一个ajax函数,将post发送到一个动态的php页面,唯一的目的是在提交后将$ _POST保存到formInv中,当然我会有通过jQuery修改for“action”属性指向动态页面,但是paginator已经有一个链接实际上转到你点击的页面编号,所以可以提交表单,将数据保存到formInv然后进入点击的页面?

2 个答案:

答案 0 :(得分:0)

IMO使用GET方法是一个很好的做法,如果它是一个搜索页面。然后,您可以将参数直接放在页面的链接中。

答案 1 :(得分:0)

删除分页器中的'a hrefs'并用spans / li替换它。然后将onclick事件绑定到span / li,这将向表单添加隐藏元素。隐藏值将包含下一页的页面号:。因此,您可以对结果进行分页并在表单中维护数据。

<ul>
 <li onclick="Pagination(2,'filterform');"><span>2</span></li>
 <li onclick="Pagination(3,'filterform');"><span>3</span></li>
</ul>


function Pagination (page, formId)
{
$('<input>').attr({ type: 'hidden',name: 'p',value: page}).appendTo($("#"+formId));
$("#"+formId).submit();
}