V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ivanlw
V2EX  ›  问与答

请教一个页面传参的问题

  •  
  •   ivanlw · 2014-04-16 00:01:24 +08:00 · 2194 次点击
    这是一个创建于 3908 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有若干个页面需要传参,然后汇总到最后一个页面生成一个订单,举个栗子吧,用一个订酒店的场景:
    1.搜索酒店
    2.选择一家酒店(传hotelID, hotelName, hotel's Long and Lat, address...到下一个页面)
    3.进入酒店的detail页面,选择其中一种rate(大床房,标间,总统套房...,把typeName和对应的rate,以及第二步的所有参数)
    4.进入下一个页面,输入个人联系信息(firstName, lastName, contactAddress, phone, email...,然后把这布的信息和第1,2步的信息一起传到下一步)
    5.信用卡信息
    6.其他信息...
    7.以此类推...
    正常实现的话,我想到的是用input的hidden type来传参,就是把前几步的参数传到下一步,然后用
    <input type="hidden" />来表示,进而可以继续传到下下步……但是感觉这样子太麻烦了,请问有什么简单一些的方法吗?
    9 条回复    1970-01-01 08:00:00 +08:00
    kchum
        1
    kchum  
       2014-04-16 00:07:30 +08:00
    session?存数据库。
    zzNucker
        2
    zzNucker  
       2014-04-16 00:07:34 +08:00   ❤️ 1
    有。。。 塞到session里。
    或者提交到服务器存其它地方。
    belin520
        3
    belin520  
       2014-04-16 00:27:06 +08:00 via Android
    显示当前页面,隐藏其他页面,点击最后页面的提交,再收集要的数据
    jsonline
        4
    jsonline  
       2014-04-16 01:00:26 +08:00   ❤️ 1
    1. cookie,缺点是消耗了不必要的带宽
    2. session,缺点是需要服务器的支持
    3. window.name,基本没缺点,不过比较 hacky
    4. localStorage, 不兼容 IE 6、7
    jsonline
        5
    jsonline  
       2014-04-16 01:05:03 +08:00
    5. iframe,把页面都放在 iframe 里,父页面保存所有数据。 iframe 的缺点是页面加载比较慢。
    jsonline
        6
    jsonline  
       2014-04-16 01:05:12 +08:00
    @belin520 我估计楼主的应用不是单页面应用,无法隐藏页面。除非他套多个 iframe,那也挺蛋疼的。
    lang1pal
        7
    lang1pal  
       2014-04-16 08:13:46 +08:00
    如果是我的话,我会这样做, 局部刷新,用unobtrusive scripting的方式去做,保持在一个页面。可以理解为动态生成了一张表单,最后一次提交
    shiye515
        8
    shiye515  
       2014-04-16 10:52:21 +08:00
    debug一下京东或者淘宝的页面看看他们是怎么做的
    sivacohan
        9
    sivacohan  
       2014-04-20 22:30:06 +08:00
    直接搞成webapp怎么样?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5699 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 01:45 · PVG 09:45 · LAX 17:45 · JFK 20:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.