自動構建表單

2022-09-03 13:36:11 字數 1913 閱讀 3589

方式一:通過類構建

第一步定義類

///

///鏈結

/// public

class

link : widgetbase

//////

鏈結url

/// [display(name = "

url"

)] [field(listshow = true, editshow = true, controlstype =controlstype.textbox)]

[required(errormessage = "

鏈結不能為空")]

public

string url

//////

圖示

/// [display(name = "圖示"

)] [field(listshow = false, editshow = true, controlstype =controlstype.textbox)]

public

string icon

//////

開啟方式

/// ///

[display(name = "

開啟方式")]

[field(listshow = true, editshow = true, controlstype = controlstype.dropdownlist, datasource = "

zkcloud.core.theme.domain.enums.target")]

public target target

//////

鏈結字型顏色

/// [display(name = "顏色"

)] [field(listshow = false, editshow = true, controlstype =controlstype.color)]

public

string color = "

#666666";

//////

鏈結標題

/// [display(name = "

鏈結標題")]

[field(listshow = false, editshow = true, controlstype =controlstype.textbox)]

public

string title }}

view code

在cshtml檔案中設定 viewdata["propertys"]

type t = type.gettype(viewdata["

type

"].tostring());

classpropertyattribute typeclassproperty = t.gettypeinfo().getcustomattribute();

classdescription configdescription = new

classdescription(t);

var propertys = configdescription.propertys.where(r => r.propertyattribute.editshow == true);

引用classcontrol

viewdata["

propertys

"] = propertys;@await html.adminwidget("core", "common/classcontrol", viewdata)

方式二:通過資料庫datafield構建

jquery 動態構建表單自動提交請求

有時候,只放置乙個button。為了保持html結構簡潔,不想套 form 表單時。可以採用下面這種方式,使用 jqurey 動態生成 form 表單後,自動提交請求,並刪除form。var form form.attr style display none form.attr target bla...

vue構建動態表單

後台管理系統裡面有非常多的表單需求,我們希望能夠通過寫乙個json格式的資料,通過vue的迴圈動態地去渲染動態表單。並且能夠在外部得到渲染出來的表單的資料,可以對表單進行重置操作。我結合element ui的控制項的下拉框,輸入框,時間選擇控制項和vue treeselect,做了乙個動態表單。先簡...

自動生成表單

專案開發中,我們要面對很多看似簡單卻很繁瑣的工作,如寫資料訪問層的相關 如果是多層結構則更加煩,幸好有 生成器之類的工具。最近公司的新專案完成了資料訪問和業務控制,接下來要面對很多個頁面的表單設計,頁面布局 拖拉控制項 輸入驗證 form資料繫結和獲取,簡單卻麻煩的事沒完沒了,想想都很害怕。在cnb...