Witam,
mam taki problem. Chciałabym ażeby wpisując do inputa można było wpisać tylko cyfry dodatkowo ażeby był zaznaczony znacznik groszy oraz cyfry były wpisywane od prawej.
znalazłam w sieci w js skrypt do maskowania ale niestety nie mogę ustawić dowolną ilość przed przecinkiem oraz wpisywanie od prawej
/*
Masked Input plugin for jQuery
Copyright (c) 2007-2009 Josh Bush (digitalbush.com)
Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
Version: 1.2.2 (03/09/2009 22:39:06)
*/
(function(a
){var c
=(a
.browser
.msie?
"paste":"input")+".mask";var b
=(window
.orientation
!=undefined
);a
.mask
={definitions
:{"9":"[0-9]",a
:"[A-Za-z]","*":"[A-Za-z0-9]"}};a
.fn
.extend
({caret
:function(e
,f
){if(this
.length
==0
){return}if(typeof e
=="number"){f
=(typeof f
=="number")?f
:e
;return this
.each(function(){if(this
.setSelectionRange
){this
.focus
();this
.setSelectionRange
(e
,f
)}else{if(this
.createTextRange
){var g
=this
.createTextRange
();g
.collapse
(true);g
.moveEnd
("character",f
);g
.moveStart
("character",e
);g
.select
()}}})}else{if(this
[0
].setSelectionRange
){e
=this
[0
].selectionStart
;f
=this
[0
].selectionEnd
}else{if(document
.selection
&&document
.selection
.createRange
){var d
=document
.selection
.createRange
();e
=0-d
.duplicate
().moveStart
("character",-100000
);f
=e
+d
.text
.length
}}return{begin
:e
,end:f
}}},unmask
:function(){return this
.trigger
("unmask")},mask
:function(j
,d
){if(!j
&&this
.length
>0
){var f
=a
(this
[0
]);var g
=f
.data
("tests");return a
.map
(f
.data
("buffer"),function(l
,m
){return g
[m
]?l
:null}).join("")}d
=a
.extend
({placeholder
:"_",completed
:null},d
);var k
=a
.mask
.definitions
;var g
=[];var e
=j
.length
;var i
=null;var h
=j
.length
;a
.each(j
.split(""),function(m
,l
){if(l
=="?"){h
--;e
=m
}else{if(k
[l
]){g
.push
(new RegExp
(k
[l
]));if
(i
==null){i
=g
.length
-1
}}else{g
.push
(null)}}});return this
.each(function(){var r
=a
(this
);var m
=a
.map
(j
.split(""),function(x
,y
){if(x
!="?"){return k
[x
]?d
.placeholder
:x
}});var n
=false;var q
=r
.val
();r
.data
("buffer",m
).data
("tests",g
);function v
(x
){while(++x
<=h
&&!g
[x
]){}return x
}function t
(x
){while(!g
[x
]&&--x
>=0
){}for(var y
=x
;y
<h
;y
++){if(g
[y
]){m
[y
]=d
.placeholder
;var z
=v
(y
);if
(z
<h
&&g
[y
].test
(m
[z
])){m
[y
]=m
[z
]}else{break}}}s
();r
.caret
(Math
.max(i
,x
))}function u
(y
){for(var A
=y
,z
=d
.placeholder
;A
<h
;A
++){if(g
[A
]){var B
=v
(A
);var x
=m
[A
];m
[A
]=z
;if
(B
<h
&&g
[B
].test
(x
)){z
=x
}else{break}}}}function l
(y
){var x
=a
(this
).caret
();var z
=y
.keyCode
;n
=(z
<16||(z
>16
&&z
<32
)||(z
>32
&&z
<41
));if
((x
.begin
-x
.end)!=0
&&(!n
||z
==8||z
==46
)){w
(x
.begin
,x
.end)}if(z
==8||z
==46||(b
&&z
==127
)){t
(x
.begin
+(z
==46?0
:-1
));return
false}else{if(z
==27
){r
.val
(q
);r
.caret
(0
,p
());return
false}}}function o
(B
){if(n
){n
=false;return
(B
.keyCode
==8
)?
false:null}B
=B
||window
.event
;var C
=B
.charCode
||B
.keyCode
||B
.which
;var z
=a
(this
).caret
();if
(B
.ctrlKey
||B
.altKey
||B
.metaKey
){return true}else{if((C
>=32
&&C
<=125
)||C
>186
){var x
=v
(z
.begin
-1
);if
(x
<h
){var A
=String
.fromCharCode
(C
);if
(g
[x
].test
(A
)){u
(x
);m
[x
]=A
;s
();var y
=v
(x
);a
(this
).caret
(y
);if
(d
.completed
&&y
==h
){d
.completed
.call
(r
)}}}}}return false}function w
(x
,y
){for(var z
=x
;z
<y
&&z
<h
;z
++){if(g
[z
]){m
[z
]=d
.placeholder
}}}function s
(){return r
.val
(m
.join("")).val
()}function p
(y
){var z
=r
.val
();var C
=-1;for
(var B
=0
,x
=0;B
<h
;B
++){if(g
[B
]){m
[B
]=d
.placeholder
;while
(x
++<z
.length
){var A
=z
.charAt
(x
-1
);if
(g
[B
].test
(A
)){m
[B
]=A
;C
=B
;break
}}if(x
>z
.length
){break}}else{if(m
[B
]==z
[x
]&&B
!=e
){x
++;C
=B
}}}if(!y
&&C
+1<e
){r
.val
("");w
(0
,h
)}else{if(y
||C
+1
>=e
){s
();if
(!y
){r
.val
(r
.val
().substring
(0
,C
+1
))}}}return(e?B
:i
)}if(!r
.attr
("readonly")){r
.one
("unmask",function(){r
.unbind
(".mask").removeData
("buffer").removeData
("tests")}).bind
("focus.mask",function(){q
=r
.val
();var x
=p
();s
();setTimeout
(function(){if(x
==j
.length
){r
.caret
(0
,x
)}else{r
.caret
(x
)}},0)}).bind
("blur.mask",function(){p
();if
(r
.val
()!=q
){r
.change
()}}).bind
("keydown.mask",l
).bind
("keypress.mask",o
).bind
(c
,function(){setTimeout
(function(){r
.caret
(p
(true))},0
)})}p
()})}})})(jQuery
);
póżniej
jQuery(function($){
$("#kwota").mask("99999,99");
niestety musze wpisać zawsze 00345,56 a nie moge napisac 345,56 i dodatkowo nie wiem jak wpisywać od prawej