所以這就是我想要做的。我想要一個短語列表,並在短語的某些部分,表明用戶輸入是必需的。無論是下拉列表,文本框,日期字段等。有點像Madlibs的方式..但可以從列表中選擇東西。關於從一串數據生成動態表單域的提示?
例如:
我自己的
?list_of_cars?
,我購買它?date?
。它有?freetext?
英里。
該字符串被分解爲文本和HTML表單字段/ ASP.net控件的混合。
?list_of_cars?
變成一個下拉列表,有幾個選項可供選擇。
?date?
被變成了一個日期字段(自定義用戶控件,我創建)
?freetext?
很簡單,用戶可以將信息輸入到一個文本框。
我有大約50個需要處理的這些短語。最終的結果是,在用戶填寫所需的輸入後,它們最終會在文本框中顯示爲純文本。
沒有列表需要大量的選項..汽車是一個壞榜樣。列表可能包含的最多選項可能是5。
在這一點上,我開始將整個字符串與一些分隔符和佔位符存儲到數據庫表中。
例如,一個行看起來是這樣的:
我自己的
{list^Nissan,Ford,Chevy}
,我購買它{date}
。它有{text}
英里。
然後我分解它,用表單域代替佔位符,然後把它們全部放回純文本。我覺得可能有一個更聰明/更好的方法來做到這一點。我不反對備份並更改最初的短語存儲方式。
只是好奇,如果任何人可能有任何提示/建議?
我首先考慮如何分離零件。如何字段名稱,某種類型,或許一些格式化信息。 '{Car Make | list:carmake | n/a}'可能是'Car Make'的提示字段,如果NULL輸出爲「n/a」,則選項來自表格中的下拉列表。包含所有列表選項的表格可以包含列表選擇器(「carmake」),選擇等級(1,2,3,...)和選項(「Saab」,「Unimog」,「Volvo」,...)。在許多形式中,您需要允許多次出現某種類型,例如開票ZIP和運送ZIP。考慮處理複數:'{狗| int:狗:狗|孤獨}'。 – HABO