一種處理表單的方法和裝置的制造方法
【專利摘要】本申請實施例提供了一種處理表單的方法和裝置,同時約定了一種表單數(shù)據(jù)結(jié)構(gòu),包括表單基礎(chǔ)屬性,還可以包括對外暴露的寫對象和聯(lián)動關(guān)系映射表中的至少一種;基于表單數(shù)據(jù)對表單中的各表單項進行渲染;該方法還包括:表單項的業(yè)務(wù)邏輯獲取到用戶對本表單項的修改信息后,或者本表單項對外暴露的寫對象被寫入修改信息后,對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改;如果本表單項存在聯(lián)動關(guān)系映射表,則查找本表單項的聯(lián)動關(guān)系映射表,確定本次修改所聯(lián)動的表單項信息,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。本申請實施例中在表單數(shù)據(jù)格式中體現(xiàn)表單項之間的聯(lián)動關(guān)系,任何場景都可以采用相同的表單項業(yè)務(wù)邏輯,無需維護多份代碼,提高了表單的可維護性。
【專利說明】
_種處理表單的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本申請實施例涉及計算機應(yīng)用技術(shù)領(lǐng)域,特別涉及一種處理表單的方法和裝置?!尽颈尘凹夹g(shù)】】
[0002]伴隨著互聯(lián)網(wǎng)內(nèi)容多樣化、格式化的發(fā)展,在一些搜集用戶信息的表單中出現(xiàn)了內(nèi)容較多,聯(lián)動關(guān)系較復(fù)雜的情況。為了保證功能完整和用戶體驗,通常采用的方法是:一個場景,一套業(yè)務(wù)邏輯,并編寫一份代碼。例如,目前市面上出現(xiàn)的一些MVVM(Model-View-View Model,模型-視圖-視圖模型)框架或者基于雙向綁定的技術(shù),均必須由前端編寫代碼實現(xiàn)表單HTML (Hyper Text Mark-up Language,超文本標(biāo)記語言)和數(shù)據(jù)之間的綁定邏輯,編寫代碼逐一實現(xiàn)業(yè)務(wù)需要的聯(lián)動邏輯。
[0003]由于往往各表單項之間是存在一定關(guān)聯(lián)的,例如,一個表單項發(fā)生變化,會影響另一個表單項,為了解決這樣的維護性問題,代碼里必須寫明各表單項的聯(lián)動關(guān)系,如果表單中內(nèi)容過多、聯(lián)動關(guān)系比較復(fù)雜時,代碼量和復(fù)雜度較大。伴隨業(yè)務(wù)內(nèi)容的膨脹和復(fù)雜度的發(fā)展,產(chǎn)品代碼會越來越多,可維護性不斷下降。
【
【發(fā)明內(nèi)容】
】
[0004]有鑒于此,本申請實施例提供了一種處理表單的方法和裝置,以便于提高表單的可維護性。
[0005]具體技術(shù)方案如下:
[0006]本申請實施例提供了一種處理表單的方法,表單數(shù)據(jù)包括表單基礎(chǔ)屬性,還可以包括對外暴露的寫對象和聯(lián)動關(guān)系映射表中的至少一種;基于所述表單數(shù)據(jù)對表單中的各表單項進行渲染;所述方法還包括:
[0007]表單項的業(yè)務(wù)邏輯獲取到用戶對本表單項的修改信息后,或者本表單項對外暴露的寫對象被寫入修改信息后,對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改;
[0008]如果本表單項存在聯(lián)動關(guān)系映射表,則查找本表單項的聯(lián)動關(guān)系映射表,確定本次修改所聯(lián)動的表單項信息,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。
[0009]根據(jù)本申請實施例一優(yōu)選實施方式,在基于所述表單數(shù)據(jù)對表單中的各表單項進行渲染包括:
[0010]對表單中的各表單項進行遍歷;
[0011]對當(dāng)前遍歷到的表單項執(zhí)行:確定與該表單項的數(shù)據(jù)格式特征相對應(yīng)的模板;利用確定的模板,生成DOM節(jié)點;利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)邏輯;
[0012]待所有表單項遍歷完成后,結(jié)束對表單的渲染。
[0013]根據(jù)本申請實施例一優(yōu)選實施方式,所述表單項的數(shù)據(jù)格式特征包括:表單項類型、該表單項是否具有對外暴露的寫對象以及該表單項是否具有聯(lián)動關(guān)系映射表。
[0014]根據(jù)本申請實施例一優(yōu)選實施方式,所述利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)邏輯包括:
[0015]將該DOM節(jié)點和該表單項的數(shù)據(jù)進行綁定;以及,
[0016]在該表單項的業(yè)務(wù)邏輯中注冊事件。
[0017]根據(jù)本申請實施例一優(yōu)選實施方式,所述注冊事件包括:
[0018]注冊表單基礎(chǔ)屬性的變化事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)本表單項的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項對外暴露的寫對象;或者,
[0019]注冊對外暴露的寫對象數(shù)據(jù)變化的事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)寫對象被寫入的修改信息,修改本表單項的表單基礎(chǔ)屬性;或者,
[0020]注冊用戶界面UI事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)用戶通過UI對本表單項的修改信息,修改本表單項的表單基礎(chǔ)屬性。
[0021]根據(jù)本申請實施例一優(yōu)選實施方式,所述對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改包括:
[0022]對本表單項的數(shù)據(jù)進行修改以及對綁定的DOM節(jié)點進行修改。
[0023]根據(jù)本申請實施例一優(yōu)選實施方式,該方法還包括:發(fā)現(xiàn)本表單項對外暴露的寫對象被寫入修改信息后,查詢修改屬性生成器以確定所述修改信息對本表單項的屬性影響;
[0024]依據(jù)所述修改信息對本表單項的屬性影響,執(zhí)行所述對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改的步驟。
[0025]根據(jù)本申請實施例一優(yōu)選實施方式,所述聯(lián)動關(guān)系映射表包含各聯(lián)動類型下的值映射表,所述值映射表包括本表單項的屬性值與所聯(lián)動的表單項信息之間的映射關(guān)系;
[0026]所述查找本表單項的聯(lián)動關(guān)系映射表包括:確定在所述聯(lián)動關(guān)系映射表中本次修改所對應(yīng)的聯(lián)動類型的值映射表,在確定出的值映射表中查找本次修改的屬性值的映射對象。
[0027]根據(jù)本申請實施例一優(yōu)選實施方式,所述聯(lián)動類型包括以下中的至少一種:
[0028]控制顯示或隱藏表單項;
[0029]修改表單項的可選內(nèi)容;
[0030]修改表單項的自定義屬性值;
[0031]修改表單項的輔助信息。
[0032]本申請實施例還提供了一種表單處理的裝置,表單數(shù)據(jù)包括表單基礎(chǔ)屬性、對外暴露的寫對象以及聯(lián)動關(guān)系映射表;所述裝置包括:渲染模塊和表單項的業(yè)務(wù)模塊;
[0033]所述渲染模塊,用于基于所述表單數(shù)據(jù)對表單中的各表單項進行渲染;
[0034]所述表單項的業(yè)務(wù)模塊,用于獲取到用戶對本表單項的修改信息后,或者本表單項對外暴露的寫對象被寫入修改信息后,對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改;如果本表單項存在聯(lián)動關(guān)系映射表,則查找本表單項的聯(lián)動關(guān)系映射表,確定本次修改所聯(lián)動的表單項信息,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。
[0035]根據(jù)本申請實施例一優(yōu)選實施方式,所述清染模塊包括:遍歷子模塊和清染子模塊;
[0036]所述遍歷子模塊,用于對表單中的各表單項進行遍歷,待所有表單項遍歷完成后,結(jié)束對表單的渲染;
[0037]所述渲染子模塊,用于對所述遍歷子模塊當(dāng)前遍歷到的表單項執(zhí)行:確定與該表單項的數(shù)據(jù)格式特征相對應(yīng)的模板;利用確定的模板,生成DOM節(jié)點;利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)模塊。
[0038]根據(jù)本申請實施例一優(yōu)選實施方式,所述表單項的數(shù)據(jù)格式特征包括:表單項類型、該表單項是否具有對外暴露的寫對象以及該表單項是否具有聯(lián)動關(guān)系映射表。
[0039]根據(jù)本申請實施例一優(yōu)選實施方式,所述清染子模塊在實例化表單項的業(yè)務(wù)模塊時,具體執(zhí)行:
[0040]將DOM節(jié)點和該表單項的數(shù)據(jù)進行綁定;以及,
[0041]在該表單項的業(yè)務(wù)模塊中注冊事件。
[0042]根據(jù)本申請實施例一優(yōu)選實施方式,所述渲染子模塊在注冊事件時,具體執(zhí)行:
[0043]注冊表單基礎(chǔ)屬性的變化事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)本表單項的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項對外暴露的寫對象;或者,
[0044]注冊對外暴露的寫對象數(shù)據(jù)變化的事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)寫對象被寫入的修改信息,修改本表單項的表單基礎(chǔ)屬性;或者,
[0045]注冊用戶界面UI事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)用戶通過UI對本表單項的修改信息,修改本表單項的表單基礎(chǔ)屬性。
[0046]根據(jù)本申請實施例一優(yōu)選實施方式,所述表單項的業(yè)務(wù)模塊在對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改時,具體用于對本表單項的數(shù)據(jù)進行修改以及對綁定的DOM節(jié)點進行修改。
[0047]根據(jù)本申請實施例一優(yōu)選實施方式,所述表單項的業(yè)務(wù)模塊,還用于發(fā)現(xiàn)本表單項對外暴露的寫對象被填入修改信息后,查詢修改屬性生成器以確定所述修改信息對本表單項的屬性影響;依據(jù)所述修改信息對本表單項的屬性影響,執(zhí)行所述對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改的操作。
[0048]根據(jù)本申請實施例一優(yōu)選實施方式,所述聯(lián)動關(guān)系映射表包含各聯(lián)動類型下的值映射表,所述值映射表包括本表單項的屬性值與所聯(lián)動的表單項信息之間的映射關(guān)系;
[0049]所述表單項的業(yè)務(wù)模塊在查找本表單項的聯(lián)動關(guān)系映射表時,具體執(zhí)行:確定在所述聯(lián)動關(guān)系映射表中本次對表單基礎(chǔ)屬性的修改所對應(yīng)的聯(lián)動類型的值映射表,在確定出的值映射表中查找本次修改的屬性值的映射對象。
[0050]根據(jù)本申請實施例一優(yōu)選實施方式,所述聯(lián)動類型包括以下中的至少一種:
[0051]控制顯示或隱藏表單項;
[0052]修改表單項的可選內(nèi)容;
[0053]修改表單項的自定義屬性值;
[0054]修改表單項的輔助信息。
[0055]由以上技術(shù)方案可以看出,本申請實施例中在表單數(shù)據(jù)格式中體現(xiàn)表單項之間的聯(lián)動關(guān)系,任何場景都可以采用相同的表單項業(yè)務(wù)邏輯,無需維護多份代碼,也不會隨著業(yè)務(wù)發(fā)展、內(nèi)容的變動以及聯(lián)動關(guān)系的調(diào)整而受影響,提高了表單的可維護性?!尽靖綀D說明】】
[0056]圖1為本申請實施例提供的表單數(shù)據(jù)格式的示意圖;
[0057]圖2為本申請實施例提供的表單項的渲染流程圖;
[0058]圖3為本申請實施例提供的聯(lián)動修改表單項的流程圖;
[0059]圖4a和圖4b分別為本申請實施例提供的一個表單修改前后的實例圖;
[0060]圖5為本申請實施例提供的表單處理裝置的結(jié)構(gòu)圖。
【【具體實施方式】】
[0061]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細描述。
[0062]本申請實施例中表單項的聯(lián)動關(guān)系體現(xiàn)在數(shù)據(jù)中,即采用一種表單數(shù)據(jù)格式,月艮務(wù)器端按照該表單數(shù)據(jù)格式輸出表單數(shù)據(jù),該表單數(shù)據(jù)格式能夠體現(xiàn)表單聯(lián)動關(guān)系。瀏覽器端從該表單數(shù)據(jù)中能夠直接獲取和維護表單項之間的聯(lián)動關(guān)系。下面首先對這種表單數(shù)據(jù)格式進行描述。
[0063]該表單數(shù)據(jù)格式主要包括三部分內(nèi)容,如圖1中所示:
[0064]第一部分:表單基礎(chǔ)屬性。該部分主要用于承載表單項的基礎(chǔ)屬性數(shù)據(jù),例如,表單項名稱(name)、類型(type)、標(biāo)簽(tabel)、默認值(defaultValue)等。不同的表單項可能具有不同的基礎(chǔ)屬性,這部分基礎(chǔ)屬性數(shù)據(jù)不會對外暴露,只有本表單項的業(yè)務(wù)邏輯能夠更改。
[0065]第二部分:對外暴露的寫對象。如果其他表單項的修改影響到本表單項,則本表單項中對外暴露的寫對象會被寫入修改信息,本表單項的業(yè)務(wù)邏輯從該寫對象獲知由于其他表單項的修改引起本表單項需要進行修改。
[0066]在該對外暴露的寫對象中可以包括動態(tài)可變屬性,動態(tài)可變屬性中包含其他表單項的修改信息,即修改的屬性值。動態(tài)可變屬性的類型可以是String(字符串),也可以是Object (對象)。通常情況下,本表單項只需要知道哪些屬性進行了修改,無需知道是哪個表單項的屬性進行了修改,即無需知道是哪個表單項的業(yè)務(wù)邏輯對本表單項的寫對象寫入了修改信息。
[0067]第三部分:聯(lián)動關(guān)系映射表。該聯(lián)動關(guān)系映射表用于體現(xiàn)本表單項與其他表單項之間的聯(lián)動關(guān)系,即本表單項對其他表單項的影響。各聯(lián)動類型下分別存在一個值映射表,值映射表中包含本表單項的屬性值與其所聯(lián)動的表單項信息之間的映射關(guān)系,即本表單項的屬性值所聯(lián)動的表單項。
[0068]當(dāng)本表單項的業(yè)務(wù)邏輯對本表單項的表單基礎(chǔ)屬性進行修改后,根據(jù)修改的屬性值找到所聯(lián)動的表單項信息,將本次的修改信息寫入本表單所聯(lián)動的表單項對外暴露的寫對象。
[0069]其中,聯(lián)動類型可以包括但不限于以下四種:
[0070]第一種、控制顯示/隱藏表單項。例如,顯示/隱藏下拉框列表。
[0071]第二種、修改表單項的可選內(nèi)容。表單項的可選內(nèi)容指的是表單項提供給用戶并供用戶進行選擇的內(nèi)容,例如,某表單項提供“男”和“女”兩種性別供用戶選擇。
[0072]第三種、修改表單項的自定義屬性值。例如,效驗規(guī)則的修改、提示信息的修改、數(shù)據(jù)單位的修改、數(shù)據(jù)有效位的修改等等。
[0073]第四種、修改表單項的輔助信息。例如,更新描述文案、標(biāo)題等。
[0074]需要說明的是,一個表單項如果不受其他表單項的影響,則該表單項可以不存在對外暴露的寫對象。一個表單項如果不會對其他表單項產(chǎn)生影響,則該表單項可以不存在聯(lián)動關(guān)系映射表。
[0075]基于上述的表單數(shù)據(jù)格式,首先對表單項的渲染進行介紹。針對一個待渲染的表單項,可以如圖2中所示的流程:
[0076]在201中,獲取該表單項的格式特征,從表單項模板集合中確定該表單項的格式特征對應(yīng)的Model (模板)。
[0077]這里表單項的格式特征可以包括:表單項類型、是否具有對外暴露的寫對象以及是否具有聯(lián)動關(guān)系映射表。依據(jù)格式特征可以從表單項模板集合中查找到對應(yīng)的Model,Model實際上是HTML模板,其中包含一些界面格式信息,主要用于進行頁面布局。
[0078]在202中,利用確定的Model,生成DOM(Document Object Model,文件對象模型)節(jié)點。
[0079]在確定Model后,將Model提供給View (視圖),View主要負責(zé)從Model中獲得數(shù)據(jù)項然后顯示給用戶。具體地,可以根據(jù)Model生成HTML字符串,將字符串填入頁面容器,生成DOM節(jié)點。
[0080]在203中,利用DOM節(jié)點和該表單項的表單數(shù)據(jù)實例化該表單項的業(yè)務(wù)邏輯。
[0081]本步驟中的業(yè)務(wù)邏輯的實例化過程主要包括兩部分:一部分是DOM節(jié)點和表單數(shù)據(jù)的綁定,另一部分是注冊事件。
[0082]其中,在生成DOM節(jié)點后,DOM節(jié)點的引用和表單項的數(shù)據(jù)會作為參數(shù)傳遞給表單項的業(yè)務(wù)邏輯,表單項的業(yè)務(wù)邏輯將將該DOM節(jié)點和表單項的數(shù)據(jù)進行綁定。如果表單數(shù)據(jù)發(fā)生變化,則會相應(yīng)地修改DOM節(jié)點,如果DOM節(jié)點發(fā)生變化,則會相應(yīng)地修改數(shù)據(jù)。這樣,表單基礎(chǔ)屬性的修改實際上就是DOM節(jié)點和表單數(shù)據(jù)的雙寫過程。
[0083]注冊事件可以包括:
[0084]事件1:注冊表單基礎(chǔ)屬性的變化事件。該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)本表單項的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項對外暴露的寫對象。
[0085]事件2:注冊對外暴露的寫對象數(shù)據(jù)變化時的事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)寫對象被寫入的修改信息,修改本表單項的表單基礎(chǔ)屬性。
[0086]事件3:注冊UI (User Interface,用戶界面)事件,該UI事件為獲取到用戶通過UI對表單項進行修改的事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)用戶通過UI對表單項的修改信息,修改本表單項的表單基礎(chǔ)屬性。
[0087]需要說明的是,圖2所示流程為對一個表單項進行渲染的流程,在對表單的渲染過程中,遍歷各表單項,針對遍歷到的表單項依次執(zhí)行如圖2中所示的渲染流程,從而完成整個表單的渲染,針對各表單項生成的DOM節(jié)點構(gòu)成表單HTML,基于表單數(shù)據(jù)的上述渲染過程中針對各表單項的DOM節(jié)點與表單數(shù)據(jù)進行了綁定,也就實現(xiàn)了表單HTML與表單數(shù)據(jù)的綁定??梢?,該綁定是在渲染過程中自動實現(xiàn)的,而無需由前端編寫代碼專門對表單HTML與表單數(shù)據(jù)進行綁定。
[0088]在執(zhí)行完圖2所示的流程后,就完成了對本申請實施例所提供表單處理方式的基礎(chǔ)準備工作。一旦用戶對某表單項進行了修改,則可以按照如圖3中所示的流程進行表單處理。
[0089]假設(shè)用戶對表單項A進行了修改,該修改觸發(fā)了預(yù)先注冊的事件3,因此在步驟301中,表單項A的業(yè)務(wù)邏輯獲取到用戶對表單項A的修改信息后,對表單項A的表單基礎(chǔ)屬性進行相應(yīng)修改。
[0090]需要說明的是,由于DOM節(jié)點和表單數(shù)據(jù)的綁定,本申請實施例中對表單基礎(chǔ)屬性的修改可能會涉及到表單數(shù)據(jù)的修改和DOM節(jié)點的修改,即數(shù)據(jù)與DOM節(jié)點的雙寫。
[0091]對表單基礎(chǔ)屬性的修改觸發(fā)了預(yù)先注冊的事件1,因此執(zhí)行步驟302,表單項A的業(yè)務(wù)邏輯查找表單項A的聯(lián)動關(guān)系映射表,找到本次修改所對應(yīng)聯(lián)動類型下修改的屬性值的映射對象,即本次修改所對應(yīng)聯(lián)動類型下修改的屬性值所聯(lián)動的表單項信息。并在步驟303中,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。
[0092]假設(shè)表單A修改的屬性值所聯(lián)動的表單項為表單項B,則預(yù)先在表單項B的業(yè)務(wù)邏輯中注冊的事件2被觸發(fā),則在步驟304中,表單項B的業(yè)務(wù)邏輯一旦發(fā)現(xiàn)對外暴露的寫對象被寫填入修改信息,則根據(jù)該修改信息修改本表單項的表單基礎(chǔ)屬性。
[0093]在表單項B的數(shù)據(jù)中還存在一個修改屬性生成器,通過該修改屬性生成器可以確定其他表單項的屬性值對本表單項的屬性的影響,表單項B的業(yè)務(wù)邏輯通過該修改屬性生成器,確定對外暴露的寫對象中填入的修改信息對本表單項的屬性影響。依據(jù)該查詢結(jié)果對本表單項的表單基礎(chǔ)屬性進行修改。其中,修改屬性生成器可以包含在表單基礎(chǔ)屬性中,也可以獨立存在。
[0094]對表單項B的表單基礎(chǔ)屬性的修改觸發(fā)了預(yù)先注冊的事件1,因此在步驟305中,表單項B的業(yè)務(wù)邏輯查找表單項B的聯(lián)動關(guān)系映射表,找到本次修改所對應(yīng)聯(lián)動類型下修改的屬性值的映射對象,即本次修改所對應(yīng)聯(lián)動類型下修改的屬性值所聯(lián)動的表單項信息。如果繼續(xù)聯(lián)動了其他表單項,則在步驟306中將修改信息寫入所聯(lián)動的表單項對外暴露的寫對象,如果沒有聯(lián)動其他表單項,則結(jié)束針對本次修改的處理。在圖3中,假設(shè)表單項B的本次修改假設(shè)聯(lián)動了表單項C,則將修改信息寫入表單項C對外暴露的寫對象。
[0095]表單項C的業(yè)務(wù)邏輯開始執(zhí)行與表單項B的業(yè)務(wù)邏輯相似的操作,在步驟307中,表單項C的業(yè)務(wù)邏輯一旦發(fā)現(xiàn)對外暴露的寫對象被填入修改信息,則根據(jù)該修改信息查詢修改屬性生成器,以確定該修改信息對本表單項的屬性影響,依據(jù)查詢結(jié)果修改本表單項的表單基礎(chǔ)屬性。在步驟308中,表單項C的業(yè)務(wù)邏輯確定表單項C不存在聯(lián)動關(guān)系映射表,或者,聯(lián)動關(guān)系映射表中本次修改信息沒有影響到其他表單項,則結(jié)束針對本次修改的處理(圖3中示出的是這種情況)。
[0096]在此舉一個例子:
[0097]某表單中包括三個存在關(guān)聯(lián)關(guān)系的表單項,分別為下拉框A、下拉框B和文本框C。
[0098]其中下拉框A的表單數(shù)據(jù)包括兩部分內(nèi)容:表單基礎(chǔ)屬性和聯(lián)動關(guān)系映射表。下拉框B的表單數(shù)據(jù)包括三部分內(nèi)容:表單基礎(chǔ)屬性、對外暴露的寫對象和聯(lián)動關(guān)系映射表。標(biāo)題框C的表單數(shù)據(jù)包括兩部分內(nèi)容:表單基礎(chǔ)屬性和對外暴露的寫對象。
[0099]在該表單的清染過程中,對表單的各表單項進行遍歷,分別對遍歷到的表單項進行渲染。
[0100]在對下拉框A的渲染過程中,該下拉框A的表單項格式特征為:表單項類型為下拉框、存在聯(lián)動關(guān)系映射表。從表單項模板集合中找到與該特征對應(yīng),Model 10將該ModelI提供給View,View根據(jù)該Model I生成HTML字符串,將字符串填入頁面容器,生成DOM節(jié)點。然后利用生成的DOM節(jié)點和下拉框A的表單數(shù)據(jù)實例化該下拉框A的業(yè)務(wù)邏輯,包括:將生成的DOM節(jié)點和表單數(shù)據(jù)進行綁定;向下拉框A的業(yè)務(wù)邏輯注冊以下事件:
[0101]事件Al、注冊表單基礎(chǔ)屬性變化事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)下拉框A的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項即下拉框B對外暴露的寫對象。
[0102]事件A2、注冊UI事件,該UI事件為獲取到用戶通過UI對該下拉框A進行修改的事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)用戶通過UI對下拉框A的修改信息,修改下拉框A的表單基礎(chǔ)屬性。
[0103]在對下拉框B的渲染過程中,該下拉框B的表單項格式特征為:表單項類型為下拉框、存在對外暴露的寫對象、存在聯(lián)動關(guān)系映射表。從表單項模板集合中找到與該特征對應(yīng),Model 2。將該Model 2提供給View,View根據(jù)該Model 2生成HTML字符串,將字符串填入頁面容器,生成DOM節(jié)點。然后利用生成的DOM節(jié)點和下拉框B的表單數(shù)據(jù)實例化該下拉框B的業(yè)務(wù)邏輯,包括:將生成的DOM節(jié)點和表單數(shù)據(jù)進行綁定;向下拉框B的業(yè)務(wù)邏輯注冊以下事件:
[0104]事件B1、注冊表單基礎(chǔ)屬性變化事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)下拉框A的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項即下拉框B對外暴露的與對象。
[0105]事件B2、注冊對外暴露的寫對象數(shù)據(jù)變化時的事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)寫對象被寫入的修改信息,修改下拉框B的表單基礎(chǔ)屬性。
[0106]在對文本框C的渲染過程中,該文本框C的表單項格式特征為:表單項類型為文本框、存在對外暴露的寫對象。從表單項模板集合中找到與該特征對應(yīng),Model 3。將該Model3提供給View,View根據(jù)該Model 3生成HTML字符串,將字符串填入頁面容器,生成DOM節(jié)點。然后利用生成的DOM節(jié)點和文本框C的表單數(shù)據(jù)實例化該文本框C的業(yè)務(wù)邏輯,包括:將生成的DOM節(jié)點和表單數(shù)據(jù)進行綁定;向文本框C的業(yè)務(wù)邏輯注冊以下事件:
[0107]事件Cl、注冊對外暴露的寫對象數(shù)據(jù)變化時的事件,該事件觸發(fā)的執(zhí)行函數(shù)為:根據(jù)寫對象被寫入的修改信息,修改文本框C的表單基礎(chǔ)屬性。
[0108]當(dāng)表單中所有表單項遍歷完成后,完成整個表單的渲染。假設(shè)渲染完成后,上面所述的三個表單項顯示狀況如圖4a中所示。
[0109]如果用戶通過UI對下拉框A中的可選內(nèi)容從“香港”修改為“臺灣”,下拉框A的業(yè)務(wù)邏輯中注冊的事件A2被觸發(fā),因此調(diào)用對應(yīng)的執(zhí)行函數(shù),執(zhí)行:根據(jù)用戶對下拉框A的修改信息,修改下拉框A的表單基礎(chǔ)屬性。將表單基礎(chǔ)屬性中下拉框A的可選內(nèi)容數(shù)據(jù)由“香港”修改為“臺灣”,并根據(jù)預(yù)先的綁定關(guān)系,找到對應(yīng)的DOM節(jié)點,例如為select節(jié)點,修改其value屬性值為“臺灣”,從而實現(xiàn)DOM節(jié)點和數(shù)據(jù)的雙寫。
[0110]下拉框A的表單基礎(chǔ)屬性變化觸發(fā)了事件Al,調(diào)用對應(yīng)的執(zhí)行函數(shù),以執(zhí)行根據(jù)下拉框A的聯(lián)動關(guān)系映射表,確定本次修改所對應(yīng)的聯(lián)動類型(修改表單項的可選內(nèi)容)下修改的屬性值所聯(lián)動的表單項為下拉框B,將修改的屬性值寫入下拉框B對外暴露的寫對象。
[0111]該修改觸發(fā)了預(yù)先注冊于下拉框B的業(yè)務(wù)邏輯的事件B2,下拉框B的業(yè)務(wù)邏輯調(diào)用對應(yīng)的執(zhí)行函數(shù),以執(zhí)行:根據(jù)寫對象被寫入的修改信息,修改下拉框B的表單基礎(chǔ)屬性。由寫對象被寫入的屬性值,下拉框B的業(yè)務(wù)邏輯確定需要將可選內(nèi)容從“香港”修改為“臺灣”
[0112]在執(zhí)行對下拉框B的表單基礎(chǔ)屬性的修改后,觸發(fā)事件BI,調(diào)用對應(yīng)的執(zhí)行函數(shù),以執(zhí)行:根據(jù)下拉框B的聯(lián)動映射關(guān)系表,確定所聯(lián)動的表單項為文本框C,將本次的修改的屬性值寫入文本框C對外暴露的寫對象。
[0113]該修改觸發(fā)了預(yù)先注冊于文本框C的業(yè)務(wù)邏輯的事件Cl,文本框C的業(yè)務(wù)邏輯調(diào)用對應(yīng)的執(zhí)行函數(shù),以執(zhí)行:根據(jù)寫對象被寫入的修改信息,修改文本框C的表單基礎(chǔ)屬性。由寫對象被寫入的屬性值,文本框C的業(yè)務(wù)邏輯確定需要將文本內(nèi)容中的“香港”修改為“臺灣”。在修改本表單項的表單基礎(chǔ)屬性時,除了將數(shù)據(jù)從“香港”修改為“臺灣”之外,還需要將綁定的DOM節(jié)點,例如text節(jié)點的value中的“香港”修改為“臺灣”。由于文本框C的本次修改不會聯(lián)動其他表單項,因此結(jié)束本次對表單的修改。
[0114]經(jīng)過上述修改后,三個表項顯示狀況可以變?yōu)槿鐖D4b中所示。
[0115]以上是對本申請實施例所提供方法進行的詳細描述,下面對本申請實施例提供的裝置進行詳細描述,本裝置的實現(xiàn)同樣基于上述的表單數(shù)據(jù)格式。圖5為本申請實施例提供的裝置結(jié)構(gòu)圖,如圖5中所示,該裝置主要包括:渲染模塊00和表單項的業(yè)務(wù)模塊10。
[0116]渲染模塊00負責(zé)對表單進行渲染,在本申請實施例中基于表單數(shù)據(jù)對表單中的各表單項進行清染。具體地,清染模塊00可以包括:遍歷子模塊01和清染子模塊02。
[0117]其中,遍歷子模塊OI負責(zé)對表單中的各表單項進行遍歷,待所有表單項遍歷完成后,結(jié)束對表單的渲染。
[0118]清染子模塊02負責(zé)對遍歷子模塊當(dāng)前遍歷到的表單項執(zhí)行:確定與該表單項的數(shù)據(jù)格式特征相對應(yīng)的Model ;利用確定的Model,生成DOM節(jié)點;利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)模塊。
[0119]上述的表單項的數(shù)據(jù)格式特征可以包括:表單項類型、該表單項是否具有對外暴露的寫對象以及該表單項是否具有聯(lián)動關(guān)系映射表。依據(jù)格式特征可以從表單項模板集合中查找到對應(yīng)的Model,Model實際上是HTML模板,其中包含一些界面格式信息,主要用于進行頁面布局。
[0120]在確定Model后,將Model提供給View(視圖),View主要負責(zé)從Model中獲得數(shù)據(jù)項然后顯示給用戶。具體地,可以根據(jù)Model生成HTML字符串,將字符串填入頁面容器,生成DOM節(jié)點。
[0121]渲染子模塊02在實例化表單項的業(yè)務(wù)模塊時,主要執(zhí)行以下兩部分操作:一部分是將DOM節(jié)點和該表單項的數(shù)據(jù)進行綁定;另一部分是在該表單項的業(yè)務(wù)模塊中注冊事件。
[0122]其中,將DOM節(jié)點和表單數(shù)據(jù)進行綁定后,如果表單數(shù)據(jù)發(fā)生變化,則會相應(yīng)地修改DOM節(jié)點,如果DOM節(jié)點發(fā)生變化,則會相應(yīng)地修改數(shù)據(jù)。這樣,表單基礎(chǔ)屬性的修改實際上就是DOM節(jié)點和表單數(shù)據(jù)的雙寫過程。
[0123]渲染子模塊02在注冊事件時,可以具體執(zhí)行:
[0124]注冊表單基礎(chǔ)屬性的變化事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)本表單項的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項對外暴露的寫對象。
[0125]注冊對外暴露的寫對象數(shù)據(jù)變化的事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)寫對象被寫入的修改信息,修改本表單項的表單基礎(chǔ)屬性。
[0126]注冊用戶界面UI事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)用戶通過UI對本表單項的修改信息,修改本表單項的表單基礎(chǔ)屬性。
[0127]渲染模塊00完成了基礎(chǔ)準備工作,一旦發(fā)生對某表單項的修改,則由對應(yīng)表單項的業(yè)務(wù)模塊10執(zhí)行操作。表單項的業(yè)務(wù)模塊10獲取到用戶對本表單項的修改信息后,或者本表單項對外暴露的寫對象被寫入修改信息后,對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改;如果本表單項存在聯(lián)動關(guān)系映射表,則查找本表單項的聯(lián)動關(guān)系映射表,確定本次修改所聯(lián)動的表單項信息,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。
[0128]其中,表單項的業(yè)務(wù)模塊10在對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改時,由于DOM節(jié)點和表單數(shù)據(jù)的綁定,實際上是對本表單項的數(shù)據(jù)進行修改以及對綁定的DOM節(jié)點進行修改。
[0129]表單項的業(yè)務(wù)模塊10 —旦發(fā)現(xiàn)本表單項對外暴露的寫對象被填入修改信息后,查詢修改屬性生成器以確定修改信息對本表單項的屬性影響;依據(jù)修改信息對本表單項的屬性影響,執(zhí)行對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改的操作。其中,修改屬性生成器也是表單數(shù)據(jù)中的內(nèi)容,可以包含在表單基礎(chǔ)屬性中,也可以獨立存在。
[0130]聯(lián)動關(guān)系映射表可以包含各聯(lián)動類型下的值映射表,值映射表包括本表單項的屬性值與所聯(lián)動的表單項信息之間的映射關(guān)系。表單項的業(yè)務(wù)模塊10在查找本表單項的聯(lián)動關(guān)系映射表時,確定在聯(lián)動關(guān)系映射表中本次對表單基礎(chǔ)屬性的修改所對應(yīng)的聯(lián)動類型的值映射表,在確定出的值映射表中查找本次修改的屬性值的映射對象。
[0131]其中聯(lián)動類型可以包括控制顯示或隱藏表單項、修改表單項的可選內(nèi)容、修改表單項的自定義屬性值和修改表單項的輔助信息中的至少一種。
[0132]由以上描述可以看出,本申請實施例提供的方法和裝置可以具備以下優(yōu)點:
[0133]I)本申請實施例中在表單數(shù)據(jù)格式中體現(xiàn)表單項之間的聯(lián)動關(guān)系,任何場景都可以采用相同的表單項業(yè)務(wù)邏輯,無需維護多份代碼,也不會隨著業(yè)務(wù)發(fā)展、內(nèi)容的變動以及聯(lián)動關(guān)系的調(diào)整而受影響,提高了表單的可維護性。
[0134]2)基于本申請實施例提出的表單數(shù)據(jù)格式對表單進行渲染,在渲染過程中對表單項進行遍歷,在對遍歷到的表單項進行清染的過程中,對基于該表單項生成的DOM節(jié)點與該表單項的數(shù)據(jù)進行綁定,從而能夠自動實現(xiàn)表單HTML與表單數(shù)據(jù)的綁定,無需由前端編寫代碼專門對表單HTML與表單數(shù)據(jù)進行綁定。
[0135]上述裝置可以以代碼的形式實現(xiàn),可見如果表單數(shù)據(jù)采用上述的表單數(shù)據(jù)格式,在表單數(shù)據(jù)中體現(xiàn)表單項之間的聯(lián)動關(guān)系,當(dāng)有表單項發(fā)生更改時,表單項的業(yè)務(wù)邏輯能夠根據(jù)表單數(shù)據(jù)的內(nèi)容進行聯(lián)動修改。所有表單項采用相同的表單項業(yè)務(wù)邏輯即可,無需維護多份代碼,也不會隨著業(yè)務(wù)的發(fā)展、內(nèi)容的變動、聯(lián)動關(guān)系的調(diào)整而影響,變化的僅僅是表單數(shù)據(jù),提高了可維護性。
[0136]本發(fā)明實施例中涉及的表單項可以包括但不限于:單選按鈕、多選按鈕、下拉框、單行輸入框、多行輸入框、文本選擇框、電話號碼輸入框、郵箱輸入框、密碼輸入框等。
[0137]在本發(fā)明所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式。
[0138]另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
[0139]上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機可讀取存儲介質(zhì)中。上述軟件功能單元存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(Read-Only Memory, ROM)、隨機存取存儲器(Random Access Memory, RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0140]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明保護的范圍之內(nèi)。
【主權(quán)項】
1.一種處理表單的方法,其特征在于,表單數(shù)據(jù)包括表單基礎(chǔ)屬性,還可以包括對外暴露的寫對象和聯(lián)動關(guān)系映射表中的至少一種;基于所述表單數(shù)據(jù)對表單中的各表單項進行渲染;所述方法還包括: 表單項的業(yè)務(wù)邏輯獲取到用戶對本表單項的修改信息后,或者本表單項對外暴露的寫對象被寫入修改信息后,對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改; 如果本表單項存在聯(lián)動關(guān)系映射表,則查找本表單項的聯(lián)動關(guān)系映射表,確定本次修改所聯(lián)動的表單項信息,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在基于所述表單數(shù)據(jù)對表單中的各表單項進行渲染包括: 對表單中的各表單項進行遍歷; 對當(dāng)前遍歷到的表單項執(zhí)行:確定與該表單項的數(shù)據(jù)格式特征相對應(yīng)的模板;利用確定的模板,生成DOM節(jié)點;利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)邏輯; 待所有表單項遍歷完成后,結(jié)束對表單的渲染。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述表單項的數(shù)據(jù)格式特征包括:表單項類型、該表單項是否具有對外暴露的寫對象以及該表單項是否具有聯(lián)動關(guān)系映射表。4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)邏輯包括: 將該DOM節(jié)點和該表單項的數(shù)據(jù)進行綁定;以及, 在該表單項的業(yè)務(wù)邏輯中注冊事件。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述注冊事件包括: 注冊表單基礎(chǔ)屬性的變化事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)本表單項的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項對外暴露的寫對象;或者, 注冊對外暴露的寫對象數(shù)據(jù)變化的事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)寫對象被寫入的修改信息,修改本表單項的表單基礎(chǔ)屬性;或者, 注冊用戶界面UI事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)用戶通過UI對本表單項的修改信息,修改本表單項的表單基礎(chǔ)屬性。6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改包括: 對本表單項的數(shù)據(jù)進行修改以及對綁定的DOM節(jié)點進行修改。7.根據(jù)權(quán)利要求1或6所述的方法,其特征在于,該方法還包括:發(fā)現(xiàn)本表單項對外暴露的寫對象被寫入修改信息后,查詢修改屬性生成器以確定所述修改信息對本表單項的屬性影響; 依據(jù)所述修改信息對本表單項的屬性影響,執(zhí)行所述對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改的步驟。8.根據(jù)權(quán)利要求1、3或5所述的方法,其特征在于,所述聯(lián)動關(guān)系映射表包含各聯(lián)動類型下的值映射表,所述值映射表包括本表單項的屬性值與所聯(lián)動的表單項信息之間的映射關(guān)系; 所述查找本表單項的聯(lián)動關(guān)系映射表包括:確定在所述聯(lián)動關(guān)系映射表中本次修改所對應(yīng)的聯(lián)動類型的值映射表,在確定出的值映射表中查找本次修改的屬性值的映射對象。9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述聯(lián)動類型包括以下中的至少一種: 控制顯示或隱藏表單項; 修改表單項的可選內(nèi)容; 修改表單項的自定義屬性值; 修改表單項的輔助信息。10.一種表單處理的裝置,其特征在于,表單數(shù)據(jù)包括表單基礎(chǔ)屬性、對外暴露的寫對象以及聯(lián)動關(guān)系映射表;所述裝置包括:渲染模塊和表單項的業(yè)務(wù)模塊; 所述渲染模塊,用于基于所述表單數(shù)據(jù)對表單中的各表單項進行渲染; 所述表單項的業(yè)務(wù)模塊,用于獲取到用戶對本表單項的修改信息后,或者本表單項對外暴露的寫對象被寫入修改信息后,對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改;如果本表單項存在聯(lián)動關(guān)系映射表,則查找本表單項的聯(lián)動關(guān)系映射表,確定本次修改所聯(lián)動的表單項信息,將本次的修改信息寫入所聯(lián)動的表單項對外暴露的寫對象。11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述渲染模塊包括:遍歷子模塊和渲染子模塊; 所述遍歷子模塊,用于對表單中的各表單項進行遍歷,待所有表單項遍歷完成后,結(jié)束對表單的清染; 所述清染子模塊,用于對所述遍歷子模塊當(dāng)前遍歷到的表單項執(zhí)行:確定與該表單項的數(shù)據(jù)格式特征相對應(yīng)的模板;利用確定的模板,生成DOM節(jié)點;利用DOM節(jié)點和該表單項的數(shù)據(jù),實例化該表單項的業(yè)務(wù)模塊。12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述表單項的數(shù)據(jù)格式特征包括:表單項類型、該表單項是否具有對外暴露的寫對象以及該表單項是否具有聯(lián)動關(guān)系映射表。13.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述渲染子模塊在實例化表單項的業(yè)務(wù)模塊時,具體執(zhí)行: 將DOM節(jié)點和該表單項的數(shù)據(jù)進行綁定;以及, 在該表單項的業(yè)務(wù)模塊中注冊事件。14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述渲染子模塊在注冊事件時,具體執(zhí)行: 注冊表單基礎(chǔ)屬性的變化事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)本表單項的聯(lián)動關(guān)系映射表,將表單基礎(chǔ)屬性的修改信息寫入本次修改所聯(lián)動的表單項對外暴露的寫對象;或者, 注冊對外暴露的寫對象數(shù)據(jù)變化的事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)寫對象被寫入的修改信息,修改本表單項的表單基礎(chǔ)屬性;或者, 注冊用戶界面UI事件,該事件觸發(fā)的執(zhí)行函數(shù)用于根據(jù)用戶通過UI對本表單項的修改信息,修改本表單項的表單基礎(chǔ)屬性。15.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述表單項的業(yè)務(wù)模塊在對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改時,具體用于對本表單項的數(shù)據(jù)進行修改以及對綁定的DOM節(jié)點進行修改。16.根據(jù)權(quán)利要求10或15所述的裝置,其特征在于,所述表單項的業(yè)務(wù)模塊,還用于發(fā)現(xiàn)本表單項對外暴露的寫對象被填入修改信息后,查詢修改屬性生成器以確定所述修改信息對本表單項的屬性影響;依據(jù)所述修改信息對本表單項的屬性影響,執(zhí)行所述對本表單項的表單基礎(chǔ)屬性進行相應(yīng)修改的操作。17.根據(jù)權(quán)利要求10、12或14所述的裝置,其特征在于,所述聯(lián)動關(guān)系映射表包含各聯(lián)動類型下的值映射表,所述值映射表包括本表單項的屬性值與所聯(lián)動的表單項信息之間的映射關(guān)系; 所述表單項的業(yè)務(wù)模塊在查找本表單項的聯(lián)動關(guān)系映射表時,具體執(zhí)行:確定在所述聯(lián)動關(guān)系映射表中本次對表單基礎(chǔ)屬性的修改所對應(yīng)的聯(lián)動類型的值映射表,在確定出的值映射表中查找本次修改的屬性值的映射對象。18.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述聯(lián)動類型包括以下中的至少一種: 控制顯示或隱藏表單項; 修改表單項的可選內(nèi)容; 修改表單項的自定義屬性值; 修改表單項的輔助信息。
【文檔編號】G06F17/30GK106033471SQ201510126089
【公開日】2016年10月19日
【申請日】2015年3月20日
【發(fā)明人】高凱
【申請人】阿里巴巴集團控股有限公司