問題:
<asp:HiddenField id="test" runat="server"/> 在前臺加了這樣一個隱藏元素,mvcsheet表單頁面,如何在後臺獲取到值,直接使用 test.value一直是空的。
前臺經過一系列判斷處理寫入該值,需要在後臺得到,然後進行處理數據。
現有流程已經上線,不想增加字段,然後再發布流程處理。
有沒有什麼好的方法處理?
解決方法:
1. 可以先把HiddenField 控件先換成TextBox 檢查你的js是否將值付給了服務器控件。
注意:前臺js給服務器控件賦值時,id的獲取方式爲<%= id名.ClientID %>
2. 可能在加載後臺方法的時候前臺JS還沒有把參數值賦予上去,
可以換一種模式處理,通過前臺JS調用後臺方法
// 增加自定義工具欄按鈕方法,觸發後臺事件
$.MvcSheet.AddAction({
Action: "TestAction", // 執行後臺方法名稱
Icon: "fa-print", // 按鈕圖標
Text: "後臺事件", // 按鈕名稱
Datas: ["{selectUser}"], // 參數,多個參數 "{Param1}","Param2"...
//OnAction: function () {
/*
自定義按鈕執行事件,如果爲 null 則調用$.MvcSheet.Action 執行後臺方法
如果不爲 null,那麼會執行這裏的方法,需要自己Post到後臺或寫前端邏輯
*/
//},
OnActionDone: function (e) {
// 後臺方法調用完成後觸發
// 以下是將後臺的值輸出到前端控件中
if (e) {
$.MvcSheetUI.SetControlValue("code", e.Code);
$.MvcSheetUI.SetControlValue("mvcName", e.Name);
}
},
PostSheetInfo: true // 是否提交表單數據,如果 false,那麼不返回表單的數據
});