我有編輯模式下的telerik RadGrid。每個單元格包含NumericTextBox。是否有可能基於同一行中的其他單元格計算一個單元格(在客戶端)。 例如,如果我有一行包含像價格和項目的單元格,我希望每次更改都計算總價格,但在客戶端,而不需要服務器端。這可能與RadGrid?如何計算客戶端的RadGrid單元格值?
1
A
回答
5
感謝您的所有答案,但我在telerik forum找到了解決方案。我只是在這裏粘貼解決方案,以防有人陷入同一問題。
ASPX:
<Columns>
<rad:GridTemplateColumn UniqueName="Price" HeaderText="Price">
<EditItemTemplate>
<radI:RadNumericTextBox ID="txtPrice" runat="server">
</radI:RadNumericTextBox>
</EditItemTemplate>
</rad:GridTemplateColumn>
<rad:GridTemplateColumn UniqueName="Quantity" HeaderText=" Number of Items">
<EditItemTemplate>
<radI:RadNumericTextBox ID="txtQuantity" runat="server">
</radI:RadNumericTextBox>
</EditItemTemplate>
</rad:GridTemplateColumn>
<rad:GridTemplateColumn UniqueName="TotalAmount" HeaderText="Total">
<EditItemTemplate>
<radI:RadNumericTextBox ID="txtTotalAmount" runat="server">
</radI:RadNumericTextBox>
</EditItemTemplate>
</rad:GridTemplateColumn>
</Columns>
C#
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem && e.Item.IsInEditMode)
{
GridDataItem item = (GridDataItem)e.Item;
RadNumericTextBox txtPrice= item.FindControl("txtPrice") as RadNumericTextBox; // Get the textbox for column Price
RadNumericTextBox txtQuantity= item.FindControl("txtQuantity") as RadNumericTextBox; // Get the textbox for column Quantity
RadNumericTextBox txtTotalAmount= item.FindControl("txtTotalAmount") as RadNumericTextBox; // Get the textbox for column "TotalAmount", if it is template as shown in aspx
txtPrice.Attributes.Add("onFocusout", "return calculate('" + txtPrice.ClientID + "','" + txtQuantity.ClientID + "','" + txtTotalAmount.ClientID + "')");
txtQuantity.Attributes.Add("onFocusout", "return calculate('" + txtPrice.ClientID + "','" + txtQuantity.ClientID + "','" + txtTotalAmount.ClientID + "')");
txtTotalAmount.Attributes.Add("onfocus", "return calculate('" + txtPrice.ClientID + "','" + txtQuantity.ClientID + "','" + txtTotalAmount.ClientID + "')");
}
}
的JavaScript:
<script type="text/javascript">
function calculate(price, quantity, totalAmount)
{
var text1 = $find(price); //I used Asp.net Ajax find method
var text2 = $find(quantity);
var text3 = $find(totalAmount);
var total = text1.GetValue() * text2.GetValue();
text3.SetValue(total);
}
</script>
0
如果您通過客戶端綁定獲取數據,最有可能通過AJAX獲得數據是可能的。如果是這樣,您應該能夠從網格的數據源屬性中獲取所有值。如果綁定數據服務器端,則會變得更加困難,因爲在這種情況下,網格目前不構建客戶端數據源。
0
退房從radgrid控件的Telerik的現場演示 - >它採用數字文本框和顯示應用場景部分你正在尋找的,夥計。
迪克
0
因爲每個項目在你可以使用JavaScript來找到通過所有輸入的父項,然後環找到你正在尋找的那些錶行?如果你打算使用jQuery,這應該是可能的,如果你想很容易地區分文本框,你可以將CssClass應用到每個TextBox?
相關問題
- 1. RadGrid客戶端綁定
- 2. 如何在客戶端計算
- 3. SQL - 基於其他單元格值計算單元格值
- 4. 如何在客戶端訪問GridView的DataKey單元格?
- 5. 計算數據庫單元格的值
- 6. 使用單元格值作爲計算的單元格範圍
- 7. 如何在計算新單元格時引用單元格的當前值?
- 8. 如何爲Web服務客戶端設計單元測試?
- 9. 在客戶端鱗次櫛比創作得到radgrid控件行第一個單元格的值
- 10. 如何從RadGrid中的單元格獲取值C#asp.net
- 11. 如何使用DataGridView計算單元格
- 12. RadGrid RadComboBox客戶端彈出幫助
- 13. 客戶端RadGrid行重新排序
- 14. Telerik RadComboBox RadGrid客戶端驗證
- 15. 如何統計客戶端引用的客戶端數
- 16. 如何訪問RadGridView中計算列的單元格值
- 17. 如何使用單元格中的值來計算多達
- 18. 獲取客戶端計算機名稱
- 19. 客戶端計算不起作用
- 20. 遠程調試客戶端計算機
- 21. 重新計算單元格
- 22. 如何訪問客戶端計算機上的Web API
- 23. 如何計算客戶端上所有文本框的總和?
- 24. 如何在客戶端的計算機上部署項目?
- 25. 我如何根據單元格值進行百分比計算?
- 26. ASPOSE.Cell-如何從AddIn公式單元格讀取計算值
- 27. 如何檢測客戶端計算機是否安裝了silverlight?
- 28. 如何計算客戶端/服務器時間間隔?
- 29. 如何在客戶端計算機上安裝Microsoft.VisualStudio.Shell.dll
- 30. 如何使用php獲取客戶端計算機MAC ID
如果thikn這個環節http://demos.telerik.com/aspnet-ajax/controls /examples/integration/gridandinput/defaultcs.aspx?product=grid這不是我所需要的。這個計算頁腳,我需要在一行內計算單元格。 – nemke 2009-05-28 13:47:06