Javascript 使表单submit()的行为与location.replace()类似

Javascript 使表单submit()的行为与location.replace()类似,javascript,Javascript,简言之: 当用户加载此网页时,需要提交此网页。说来话长,这是有充分理由的 是否可以使表单postsubmit()的行为类似于location.replace()?没有历史痕迹 谢谢 长话短说:在我的CMS中,每个产品都有一个页面。产品通常列在部分页面上,邀请用户选择产品: 10美元小买 中等20美元购买 30美元大买 点击“购买”会将用户发送到非现场的付款页面 产品详细信息来自CMS页面,我在其中定义了价格、产品ID等的特定字段。产品详细信息以表单形式呈现 我基本上不想显示独立的permali

简言之:

当用户加载此网页时,需要提交此网页。说来话长,这是有充分理由的

是否可以使表单
post
submit()的行为类似于location.replace()?没有历史痕迹

谢谢


长话短说:在我的CMS中,每个产品都有一个页面。产品通常列在部分页面上,邀请用户选择产品:

  • 10美元小买
  • 中等20美元购买
  • 30美元大买
  • 点击“购买”会将用户发送到非现场的付款页面

    产品详细信息来自CMS页面,我在其中定义了价格、产品ID等的特定字段。产品详细信息以表单形式呈现

    我基本上不想显示独立的permalink产品页面。但是,这是一个CMS,产品将在部分页面和诸如此类的页面上列出,用户可能最终通过单击链接而不是表单的完整呈现页面来选择产品


    如果它们最终出现在产品页面上,我希望它们被重定向到购买页面。当然,我不想将页面保留在历史记录中,原因与location.replace()的发明是一样的:为了避免永久重定向的后退按钮

    只需做一篇AJAX文章,后面跟着一个
    位置。替换
    。AJAX帖子不会创建浏览器历史记录条目。

    不这样认为。使用location.replace会导致浏览器发出GET命令。只有一个url参数,您不能使用
    .replace(url,'POST')
    (这可能很好)。为什么不使用Ajax发布表单?我猜您希望显示POST响应。为什么不希望用户访问其浏览器历史记录?说真的,你的理由要么是被误导了,要么是你的方法过时了。李,你想展示帖子回复是对的。我不关心访问浏览历史记录,只是想避免在重定向陷阱中锁定后退按钮。我添加了一个很长的描述,以明确我想要什么以及为什么我必须这样做。我想将用户重定向到站点外的表单结果页面。如果“重定向”是指服务器的HTTP 30X响应具有正确的“位置”头,您可以在ajax响应中读取该头,并使用该URL进行Location.replace。如果“重定向”的意思是希望用户“终止于”给定的URL,则该URL可以是表单POST请求的响应主体。