我已經編寫了一些擴展方法來擴展客戶端表單驗證的html助手類。我希望能夠做的是在頁面中加載一個數組(javascript),它是我的驗證「庫」中的所有元素。在加載mvc3之前解析頁面上的所有html助手擴展
例如:
@Html.VTextBox("blah)
@Html.VDropDownList("bling")
@Html.VTextBox("bloo")
加載頁面時,我想一個JavaScript陣列放置在充滿了這樣的事情上:
errorListArr = new Array("blah","bling","bloo");
目前我在做什麼是對每個元素使用errorListArr.push()並且每次寫出腳本標記......顯然不是最優雅的方法。我還想弄清楚如何提前解析整個頁面,以便我可以將我需要驗證服務器端的元素列表放在一起。
請讓我知道這是否可以完成,任何代碼片段/示例將不勝感激。
幾個問題:1:你有沒有考慮使用「不顯眼的JavaScript「技巧,以避免需要這些腳本片段? 2:爲什麼數組需要放在頁面頂部(而不是底部)? 3:爲什麼你需要一個你要驗證的元素(客戶端)列表(服務器端)? – StriplingWarrior 2011-06-17 04:05:06
1.不確定你在這裏的意思2.數組可能在底部,這將是好3.基本上我試圖使這個代碼儘可能重用,而不必編寫一堆更多的代碼服務器端。所以看上面我的例子,我簡單地放入一個@ Html.VTextBox客戶端和服務器端應該知道它需要驗證。 VTextBox元素採用「類型」參數,如電子郵件的「e」或電話的「p」。我想要做的是傳遞一個隱藏的表單變量與所有需要驗證服務器端的元素。我不能把我聽到的關於創建列表4 arr也聽到。 – 2011-06-17 04:17:48