AJAX :: Displaying Currency With MaskedEditExtender In Correct Format
Dec 1, 2010
I am using ASP.NET3.5. I have used MaskedEditExtender for currency purpose. when iam insering data into table it is accepting correct figures. while reading the same figures from database,I am displaying the figured in another textbox. (for second textbox i have used MaskedEditExtender) but it is displaying in that text box wrongly. suppose x=100 am reading this value from database and displaying x value in edit mode.but it is displaying 1.00. means it is taking last 2 digits as decimal points. how can I show in correct format?
I have found a problem with the Masked Edit Extender when using it with a culture of Azeri (Latin, az-Latn-AZ). I have not found anywhere that states that the control should not be used with languages that is not included in the list of languages that the ajax control toolkit is translated.
The currency symbol for Azeri is "man." the first problem is that the mask displays this as "man," but the comma is the decimal indicator for Azeri.
Scenario 1
When the DisplayMoney property is set to "right" and the currency is removed by the masked editors script the resulting value looks something like "12,12," the second comma then invalidates the numeric value and all my compare validator which also acts on the same textbox keeps failing because the value is not numeric.
Scenario 2:
When the DisplayMoney property is set to "left" there is always a "0," added to the string because the the script of the masked editor removes the man then gets to the comma (man",") sees it as a decimal indicator and adds the 0 before the comma this happens on the first blur of the textbox each resulting onblur event will add another 0 to the value. But the value is already invalidated by the fact that it again has two commas like 0,12,12.
I get this result even with the Ajaxcontroltoolkit sample site, the changes needed to sample site's MaskedEdit.aspx page can be seen below.
For scenario 1, change the first MaskedEditExtender on the MaskedEdit.aspx page to the following:
[Code]....
For scenario 2 effect change the first MaskedEditExtender on the MaskedEdit.aspx page to the following:
I have a tex box which I'm using to capture a bank sort code.
I want to use the AJAX MaskedEditExtender so the user only ever inputs the data in this format 12-34-56.
Here is my extender code:
[Code]....
This initially works fine, however when i remove the focus on this text box the input removes any hyphen and the texbox value is left like this 123456.
In my code when the page loads I need to set the tbDate to readonly, then when the user enters some other info on the page I will make tbDate editable (not readonly), I did all these using javascript by setting tbDate.readOnly = true/false. However, when going from readonly to editable, when the tbDate field receives the focus, the mask __/__/____ appears, but when the user starts typing the first digit, it pushes the mask as if the mask was part of the value, so it becomes something like 12__/__/____ instead of 12/__/____. If I commented out the code that makes the tbDate field readonly, then the mask works as expected.
I want a TextBox with a mask like (xxx) xxx-xxxx using a MaskedEditExtender. I tried to set up the mask property to "(999) 999-9999" or "(999) 999-9999" but nothing works. It there a way I can have the mask I want?
I am using a MaskedEditExtender on a textbox to verify a date. MaskType="Date" Mask="99/99/9999". Users of the system are used to typing just the last two digits of the year (i.e. 22/06/10) so I am trying to make this possible.
I have tried using Century="2000" but this option does not seem to function at all (still results in 22/06/0010).
A response in another forum suggests modifying the MaskedEditBehavior.js file to fix this behaviour - see here.
My question is, how should I go about modifying the MaskedEditBehavior.js file (as suggested in the link above), and how do I ensure that this modification is distributed with my application? I cannot even find this file to modify.
My website will target UK and US markets, and i need to display a different price/currency for both markets - what is the best way around this?
1) a simple drop down box asking users preference? 2) Using culture class in asp .net to auto detect eg System.Threading.Thread.CurrentThread.CurrentUICulture
My requirement is, I have one text box and that text box accepts US Format 10 digit phone number like 555-555-5555. I want when user enter 5555555555 it automatically convert this in 555-555-5555 and if he enter some wrong number then show him error and if dont want to enter any thing then there should not be any error.
<th style="width: 150px">Home Telephone </th> <td> <asp:TextBox ID="txtHome" runat="server" MaxLength="12" ValidationGroup="vUserDetailsB" Width="252px" CssClass="txtBox" TabIndex="19"></asp:TextBox> <cc1:MaskedEditExtender ID="meeHome" runat="server" TargetControlID="txtHome" AutoComplete="false" MaskType="None" Mask="999-999-9999" ClearMaskOnLostFocus="true" InputDirection="LeftToRight" /> <%-- <cc1:MaskedEditValidator ID="mevHome" runat="server" ControlToValidate="txtHome" EmptyValueMessage="Telephone Number is required." ValidationGroup="vUserDetailsB" ControlExtender="meeHome" InvalidValueMessage="Valid Telephone Number is required." IsValidEmpty="false" ValidationExpression="^d{3}-d{3}-d{4}$" Font-Size="8pt" />--%> <asp:RegularExpressionValidator ID="revHome" runat="server" ControlToValidate="txtHome" Display="Dynamic" ErrorMessage="Invalid Home number. Number should be in the format: 555-123-4567" Font-Size="8pt" SetFocusOnError="True" ValidationExpression="d{3}-d{3}-d{4}" ValidationGroup="vUserDetailsB" Width="100%" meta:resourcekey="txtHomeResource1"></asp:RegularExpressionValidator> </td>
Whats happenening, If i entered any thing like 5555555555 and it is coverting to this 555-555-5555 format which is correct and then when i moved to another textbox it is throwing error "Invalid Home number. Number should be in the format: 555-123-4567" and this format changes to 5555555555 and its not going ahead.
I have one one web page which one one textbox for receiving the dollar value. My requirement is the user should insert the digit following by a $ sysmbol. And the second requirement is the user has the permission to insert only like this $123.45. Before the decimal point it should not exceed three digits and after the decimal point it should not exceed two digits.
I have a gridview that I am populating with data for the folks in accounting and they want me to format currency values so that they display without $'s, with commas separating digits and with negative numbers surrounded by ( )
e.g.:
12345.67 = 12,345.67 -12345.67 = (12,345.67)
I have found lots of examples around the interwebs that get me close but there is either no ( ) around negatives or there is a $ included.
I have a label in a gridview which does a calc and works great however it does not format currency as expected. The label takes the bound value of QTY and multiples with the bound value of PRICE that is wrapped in a function to get a gross price.
I have searched and found various methods for formatting as a string decimal values but cant fine one which covers all my needs. I have to display a decimal value (a financial money figure) i.e. 2500.75
However I do not require any leading currency symbol such as $ or £ and the main point I am struggling with is that when the value has no value after the decimal do not display zeros. I thought
Code: .ToString(".##")
was meeting my requirements initiall but then realized if someone put the value 7.4 in it was displayed as 7.4 when it should be displayed as 7.40.