2015-05-19 62 views
0

我有一個ASPxSpinEdit,onblur我想截斷輸入的任何小數。以下代碼有兩個問題。我可以通過使用s.ParseValue()方法從框中獲取值,但在對數值進行任何運算後似乎無法重新分配值。我遇到的另一個問題是我似乎無法離開盒子。事件發生後,光標放回盒子中,不會離開。我的代碼如下。謝謝。如何在LostFocus事件期間從ASPxSpinEdit獲取和設置值。

<dx:GridViewDataTextColumn FieldName="InventoryBank" Caption="InventoryBank" Width="100px"> 
    <EditItemTemplate> 
     <dx:ASPxSpinEdit runat="server" NumberType="Float" DecimalPlaces="1" AllowNull="true" AllowMouseWheel="true" AllowUserInput="true" MinValue="-999999999" ID="lblInventoryBank" Value='<%# Bind("InventoryBank") %>' Width="100px" Increment="1" MaxValue="999999999"> 
      <ClientSideEvents LostFocus="function(s, e) { 
       s.ParseValue(); 
       var truncatedValue = s.GetNumber(); 
       truncateValue = (truncateValue * 100)/100; 
       }"> 
      </ClientSideEvents> 
     </dx:ASPxSpinEdit> 
    </EditItemTemplate> 
</dx:GridViewDataTextColumn> 

回答

0

所以我想我應該在這裏一直走我的直覺,只是完全繞過DevExpress。吹碼調用一個常規的JavaScript函數,並從那裏的解決方案是相當容易的。

<dx:GridViewDataTextColumn FieldName="InventoryBank" Caption="InventoryBank" Width="100px"> 
    <EditItemTemplate> 
     <dx:ASPxSpinEdit runat="server" NumberType="Float" DecimalPlaces="1" AllowNull="true" AllowMouseWheel="true" AllowUserInput="true" MinValue="-999999999" ID="lblInventoryBank" Value='<%# Bind("InventoryBank") %>' Width="100px" Increment="1" MaxValue="999999999"> 
      <ClientSideEvents LostFocus="fnTruncateInt" /> 
     </dx:ASPxSpinEdit> 
    </EditItemTemplate> 
</dx:GridViewDataTextColumn> 

而下面是我的頁面頂部的JavaScript。

function fnTruncateInt(s, e) { 
    s.SetValue(Math.floor(s.GetValue())); 
} 
相關問題