jquery – 同步提交(不是ajax)

前端之家收集整理的这篇文章主要介绍了jquery – 同步提交(不是ajax)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个页面(第1页)接受发布的请求,做一些东西并显示一些数据到最后.

从另一个页面(第2页),当点击一个按钮时,我想重定向到第1页,当然通过POST发送第1页所需的所有相关数据.

当然,我可以使用页面上隐藏形式的老黑客,填写所有使用jQuery的数据,只要用户点击按钮,然后自动提交().
但是这看起来很麻烦 – 使用类似于$.post的语法,而不是开始操纵html,这更好. $.post将是完美的,它是否实际重定向页面,而不是异步地发出请求(在第1页需要数据显示的东西之后,我不能重定向到第1页,因为ajaxy的帖子已经完成.

有没有办法用jquery做我想要的,还是丑陋的隐形形式唯一的出路?

P.S

我知道有其他令人振奋的方式来实现我想要的,例如使用$.post,并在我们目前的页面上种植回复的html,但我只是想知道是否有一个简单的方法来做这个jquery

解决方法

这给了我一个想法,一个jQuery函数来模仿$.post行为,如你所描述的.它仍然在后台使用不可见的形式,但它的语法相对干净直接.
  1. $(document).ready(function(){
  2. $('#myButton').PostIt('post.PHP',{foo:'bar',abc:'def',life:42});
  3. $('#myOtherButton').PostIt('post.PHP',dataObjectFromSomewhereElse);
  4. });
  5.  
  6. $.fn.PostIt = function(url,data){
  7.  
  8. $(this).click(function(event){
  9.  
  10. event.preventDefault();
  11.  
  12. $('body').append($('<form/>',{
  13. id: 'jQueryPostItForm',method: 'POST',action: url
  14. }));
  15.  
  16. for(var i in data){
  17. $('#jQueryPostItForm').append($('<input/>',{
  18. type: 'hidden',name: i,value: data[i]
  19. }));
  20. }
  21.  
  22. $('#jQueryPostItForm').submit();
  23. });
  24. }

猜你在找的jQuery相关文章