2012-02-16 92 views
1

我正在嘗試使用HTML5內置的驗證屬性,我碰到的第一個困難是驗證屬性在表單上下文中工作。 I.E.如果你想驗證兩個獨立的輸入,那麼你應該把它們放在兩個不同的<form>標籤中。HTML5驗證和ASP.net Webforms

如何用asp.net處理這種情況,其中頁面是由包含整個內容的大表單形成的?

+0

我也有這個問題。我使用angularjs的webforms。我在同一頁面上有多個表單,並同時進行獨立驗證。我沒有解決這個問題,但我看到了兩個解決方案。 1.更改爲ASP.NET MVC或.. 2跳過html驗證屬性並使用angularjs中的指令創建自己的屬性。當我完成後,我會盡快回復你... – 2012-12-06 15:05:08

回答

1

我想你有一個誤解。

HTML 5同時具有forminput驗證屬性。 form屬性僅允許您打開/關閉自動完成功能,並完全關閉所有input元素的驗證。

input元素是真正的工作執行的地方。請注意,您可以在form級別開啓自動完成功能,但會將其關閉,具體爲inputs

順便說一句,嵌套<form>標籤仍然是一個不錯的HTML5下。只是各種瀏覽器都支持它,以便繼續與絕大多數編碼不正確的網站兼容。實際上,儘可能兼容這個概念是導致瀏覽器如此複雜的主要原因。

更多信息:http://www.w3schools.com/html5/html5_form_attributes.asp

+0

「擁有多個

標籤仍然是HTML5下的不成?」?你不是在談論多個NESTED表單標籤嗎? – 2012-12-06 14:33:55

+0

@HeNrik:是的,這將是一種更好的表述方式。 – NotMe 2012-12-06 20:07:19

0

警告:以下解決方案是不漂亮,我知道。但這是我能想到的唯一解決方案。 :/

使用服務器創建的表單標籤並排創建表單標籤。將客戶端表單放在頁面頂部。

缺點:不能使用服務器標籤。但是,嘿......誰現在有一天?! :)

<form runat="server" ...> 
    ... Everything .... 
</form> 
<div class="positionedOnTopOfThePage"> 
    <form> 
     ... Form with HTML5 validation ... 
    </form> 
    <form> 
     ... Form with HTML5 validation ... 
    </form> 
</div>