2012-03-19 71 views
1

內容這是我的網頁看起來像: enter image description here如何從動態添加控件

PosisionDataView是一個Web用戶控件,它包含了產品名稱和筆記再加上一些額外的控制文本框。

QuantityView也是一個網頁用戶控件,它包含數量和價格的文本框以及一些額外的控件。

用戶可以動態添加QuantityView和PositionView到頁面。出現這種情況是這樣的:

  • 用戶點擊ButtonAddQuantityView或ButtonAddPositionView
  • jQuery的AJAX方法被調用,這對我的Web服務,它返回QuantityView或PositionView HTML格式
  • 接收到的控制調用一個方法被附加到QuantityPlaceholder或PositionsPlaceholder

這一切工作都很順利,但回發後解析這個混亂的最佳方法是什麼?例如,QuantityView包含文本框txtQuantity和Request.Form集合我得到這些值數量:

  • ctl00 $ ContentPlaceHolder1 $ PositionView $ ctl00 $ QuantityView $ ctl00 $ txtQuantity:1個
  • ctl00 $ txtQuantity:2 ,4
  • ctl00 $ $ QuantityView $ ctl00 txtQuantity:3

在reallity位置1含有量1和2,以及位置2含有量3和4,但是的Request.Form亂七八糟...

+0

ClientIds(ctl00 $ ...)可以修改,但可以在ASP.NET 4.0中使用:http://weblogs.asp.net/asptest/archive/2009/01/06/asp-net-4-0- clientid-overview.aspx – 2012-03-19 15:17:49

回答

1

以爲我可以發表評論!

無論如何,你確定表單變量名稱不重複嗎?尤其是ctl00 $ txtQuantity。

如果txtQuantity名稱可以像txtPositionViewQuantity或txtQuantityViewQuantity(對於每個子節)一樣略爲獨特,那麼可以通過jquery訪問這些控件的數據並創建一個JSON對象。這將保持您的服務器往返燈光。

+0

謝謝,做到了這一點:使用jquery循環控制,使用與.NET相同的簽名構建一個對象,將它發送給web方法並讓ASP.NET處理json序列化...很棒:) – sventevit 2012-04-03 12:15:21