2011-10-03 30 views
2

我們有一個頁面,其中包含三個Web表單For Marketing Manager表單,這些表單位於三個單獨的DHTML選項卡上。如果用戶填寫並提交表單,他們將返回默認選項卡,並且他們的感謝信息位於他們填寫的表單的選項卡上。在帶有動態選項卡的單頁上處理多個WFFM表單

我們研究了可能使用hastags來指示你在哪個標籤,所以我們可以在頁面加載到WFFM表格回發後設置適當的焦點,但在回發期間標籤被從URL中剝離。查詢字符串參數看起來在回發後仍然存在,但如果將這些標籤導航設置爲這些,則會自動發回帖子,從而消除使用DHTML標籤的優勢。

有沒有人有一個很好的解決方案來處理在回發後顯示正確的選項卡?

Sitecore的版本:(REV 110324)(REV 110303)6.4.1 Web窗體的營銷-2.2.0

回答

2

對於另一種方法,您可以使用javascript來更新cookie更改選項卡的時間。下一次加載頁面時,會檢查cookie以找出用戶所在的最後一個選項卡,並將該​​選項卡恢復爲默認選項卡(它也可以在此時清除cookie)。

+0

這與其他答案(因爲我們正在使用jQuery UI標籤)結合起來似乎是現在最好的方法。謝謝! – ddysart

0

覆蓋所提交表單控件的行爲,並在有回傳它會向設置顯示當前選項卡的值的頁面發出一些javascript。您可以在頁面上使用您的JavaScript來使用該變量來設置要顯示的默認選項卡。

+0

如果這是正常的Web窗體,可能的工作,但控制完全由Sitecore的插件控制,所以首要的是不是一種選擇。此外,表單可能出現在任何數量的非製表符的佔位符中。 – ddysart

+0

即使您使用插件,您仍然可以覆蓋提交功能。自從我與WFFM合作以來已經有一段時間了,但您可以完全自定義表單的行爲方式,就像大多數Sitecore一樣。這可能需要多一點工作,但是這也可以檢查頁面上是否存在標籤,並且只在必要時才執行此操作。 – Kasaku

1

你可以使用一個cookie。

  1. 當選中某個選項卡時,使用所選索引的值存儲cookie(如果必要,在當前路徑下使用唯一名稱)等。
  2. 在頁面準備就緒後,檢查您的cookie。如果存在,請抓取該值,並將相應的選項卡設置爲選中狀態。

是的,這是一個cookie,可能不是100%的理想,但我認爲這很好,因爲這只是UI糖。

哎呀,jQuery UI的標籤甚至這個建於:http://jqueryui.com/demos/tabs/#option-cookie

相關問題