2012-04-04 117 views
0

我是jqGrid的新手,並且無法完成一些任務。任何指導都將是一個巨大的幫助。貨幣掩碼jqgrid

Issue1#我需要執行下面的jQuery在創建表單上我的速度場屏蔽,

$( '#率')priceFormat({前綴: '',thousandsSeparator: ''});我怎麼能在jqGrid中實現這一點?

非常感謝。

這就是我現在所擁有的:

JQGridColumn RATEColumn = CapitationsGrid.Columns.Find(c => c.DataField == "RATE"); 
      RATEColumn.Editable = true; 
      RATEColumn.EditType = EditType.TextBox; 
      RATEColumn.EditDialogLabel = "Rate"; 
      RATEColumn.DataType = typeof(float); 
      RATEColumn.EditClientSideValidators.Add(new RequiredValidator()); 
      RATEColumn.EditClientSideValidators.Add(new NumberValidator()); 
      RATEColumn.Formatter = new CurrencyFormatter 
      { 
       DecimalPlaces = 1, 
       DecimalSeparator = ".", 
       Prefix = "$", 
       Suffix = " USD", 
       ThousandsSeparator = "," 
      }; 

回答

1

瞭解,這jqGrid的嘗試將數據從可視化分離是很重要的。因此,如果您需要顯示貨幣,例如您應在輸入數據中填寫號碼,並使用custompredefined格式化程序以格式顯示您所需的區域設置對應的貨幣。

要格式化貨幣,您應該使用formatter: 'currency', formatoptions: {thousandsSeparator: ""}(請參閱the documentation)。貨幣格式化程序的默認值爲formatoptions,您可以在您使用的區域設置文件grid.locale-en.js中找到該值。

+0

我使用的是自定義的格式,但它只能在網格視圖的工作,我需要它在編輯論壇上工作壓力太大。 – OBL 2012-04-04 19:41:47

+0

它們沒有像格式化程序方法一樣的EditClientSideValidators方法? – OBL 2012-04-04 19:43:17

+0

@OBL:一個例子將清楚所有。如何實現這個問題有太多的可能性。一般來說,jqGrid有特殊的'formatCell'函數只能用於單元格編輯(參見[這裏](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:cell_editing#events))。在表單編輯中,將顯示原始的未格式化數據。你原始的源數據有幾千個分隔符?無論如何,您可以將數據修改爲[editoptions](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:common_rules#editoptions)的'dataInit'部分內部的編輯開始。 – Oleg 2012-04-04 19:51:15