我在Webform 6.x-3.18中使用Drupal 6.28。我有一個多步驟表單設置。如果您選擇一個單選按鈕,我的一些字段只會顯示出來。在這個特定的例子中,這是一個註冊表單,其中一個問題是「你會帶客人嗎?」。如果他們選擇是,那麼一些額外的領域下降屬於他們的客人。所以這個效果很好。他們可以提交表格,一切正常。問題是,如果他們回到他們的形式進行編輯並決定單獨出席,而現在他們不會帶來客人,則客人領域會按照預期從表格中消失,但數據仍然在幕後,特別是數據庫。所以現在當我們去運行關於某些特定來賓字段的報告時,這些字段會拋出我們的報告,因爲數據仍然存在於dB中,就好像它們即使不是現在帶來的客人一樣。取決於其他領域的字段問題
任何人都可以想到處理這個問題的最佳場所嗎?我應該製作一個自定義模塊,以某種方式掛鉤到網絡表單中並捕獲它並重置所有guest域?我只是不知道處理這個問題的最佳地點。
感謝
謝謝牆壁。是的,我理解這個邏輯。我想我只是不知道在哪裏做到這一點。我是否在黑客的網絡表單模塊?我對Drupal相當陌生,所以仍然試圖找到解決方法。我製作了自定義模塊,但我還是很新的。我不知道我會把這個新邏輯放到什麼文件中。 –
因爲我已經跳入了Drupal代碼,這段時間已經過去了一段時間,但是看起來您可能可以在某些自定義代碼中添加該邏輯。 在webform/webform.api.php文件中的'hook_webform_submission_presave'中,它看起來像你可以直接修改$提交。 嘗試檢查那裏的單選按鈕的值,並將數據設置爲任何需要的(如果您的按鈕爲false)。 – Walls
感謝人。這完全是訣竅!我已經有了一個自定義模塊,所以我利用hook_webform_submission_presave來檢查我的單選按鈕的值,然後將我的依賴字段值設置爲空數組,並且工作正常。 –