另一个表格提交问题

时间:2009-10-14 17:21:13

标签: php mysql html ajax forms

我有一个onsubmit调用ajaxFunction()的表单... ajaxfunction调用一个php函数,它从mysql db返回结果......

问题是后退按钮...我希望用户能够搜索然后再次搜索,然后使用后退按钮返回上一个搜索,但这不会工作...请记住,表单并不真实提交,它称为ajaxfunction ...

我是否必须提交表单才能使用后退按钮?

BTW我已经尝试过提交表单了,但是页面刚刚刷新并且ajaxfunction没有被调用,这导致没有mysql结果,因为php文件从未被调用过!!!

感谢所有帮助人员...如果您需要更多输入,请告诉我......

2 个答案:

答案 0 :(得分:0)

您可以将表单提交到当前页面上的命名锚点,这不会引起服务器请求。

您的表格:

<form action="#anchor">
...
</form>

表单的目的地(在同一页面上)

<a name="anchor">...</a>

如果您这样做,后退按钮将导航回地址栏中的预表单提交地址,而不会重新加载页面。

更新:尝试使用Really Simple History:)

答案 1 :(得分:0)

我认为让用户点击“后退”按钮几乎会破坏启用ajax的表单的好处。

在调用ajax函数之前,清除div的innerHTML属性,以便从一个干净的平板开始。或者允许用户控制它,在按钮中提供功能。

document.getElementById("divid").innerHTML = "";

或jQuery:

$("#divid").html("");

编辑/更新:由于某些原因我无法访问该网站,但他们可能正在使用一些jQuery或Javascript来捕获页面的unload事件。 SO使用这样的东西。您可以使用该事件来调用上面提到的内容:

$(window).unload(function() { 
    $("#divid").html(""); 
});
相关问题