demo20230512/Scripts/kendo/2014.2.716/kendo.numerictextbox.min.js

16 lines
8.3 KiB
JavaScript
Raw Permalink Normal View History

2023-05-12 10:20:28 +08:00
/**
* Copyright 2014 Telerik AD
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
!function(e,define){define(["./kendo.core.min","./kendo.userevents.min"],e)}(function(){return function(e,t){function n(e,t){return'<span unselectable="on" class="k-link"><span unselectable="on" class="k-icon k-i-arrow-'+e+'" title="'+t+'">'+t+"</span></span>"}var i=window.kendo,r=i.caret,a=i.keys,o=i.ui,s=o.Widget,l=i._activeElement,u=i._extractFormat,c=i.parseFloat,d=i.support.placeholder,f=i.getCulture,p=i._round,h="change",g="disabled",m="readonly",v="k-input",_="spin",y=".kendoNumericTextBox",w="touchend",b="mouseleave"+y,k="mouseenter"+y+" "+b,x="k-state-default",C="k-state-focused",T="k-state-hover",F="focus",S=".",D="k-state-selected",E="k-state-disabled",M="aria-disabled",A="aria-readonly",I=/^(-)?(\d*)$/,H=null,z=e.proxy,O=s.extend({init:function(e,n){var r,a,o,l,c,d=this,f=n&&n.step!==t;s.fn.init.call(d,e,n),n=d.options,e=d.element.on("focusout"+y,z(d._focusout,d)).attr("role","spinbutton"),n.placeholder=n.placeholder||e.attr("placeholder"),d._reset(),d._wrapper(),d._arrows(),d._input(),i.support.mobileOS?d._text.on(w+y+" "+F+y,function(t){d._toggleText(!1),t.type===F&&e.focus()}):d._text.on(F+y,z(d._click,d)),r=d.min(e.attr("min")),a=d.max(e.attr("max")),o=d._parse(e.attr("step")),n.min===H&&r!==H&&(n.min=r),n.max===H&&a!==H&&(n.max=a),f||o===H||(n.step=o),e.attr("aria-valuemin",n.min).attr("aria-valuemax",n.max),n.format=u(n.format),l=n.value,d.value(l!==H?l:e.val()),c=e.is("[disabled]"),c?d.enable(!1):d.readonly(e.is("[readonly]")),i.notify(d)},options:{name:"NumericTextBox",decimals:H,min:H,max:H,value:H,step:1,culture:"",format:"n",spinners:!0,placeholder:"",upArrowText:"Increase value",downArrowText:"Decrease value"},events:[h,_],_editable:function(e){var t=this,n=t.element,i=e.disable,r=e.readonly,a=t._text.add(n),o=t._inputWrapper.off(k);t._toggleText(!0),t._upArrowEventHandler.unbind("press"),t._downArrowEventHandler.unbind("press"),n.off("keydown"+y).off("keypress"+y).off("paste"+y),r||i?(o.addClass(i?E:x).removeClass(i?x:E),a.attr(g,i).attr(m,r).attr(M,i).attr(A,r)):(o.addClass(x).removeClass(E).on(k,t._toggleHover),a.removeAttr(g).removeAttr(m).attr(M,!1).attr(A,!1),t._upArrowEventHandler.bind("press",function(e){e.preventDefault(),t._spin(1),t._upArrow.addClass(D)}),t._downArrowEventHandler.bind("press",function(e){e.preventDefault(),t._spin(-1),t._downArrow.addClass(D)}),t.element.on("keydown"+y,z(t._keydown,t)).on("keypress"+y,z(t._keypress,t)).on("paste"+y,z(t._paste,t)))},readonly:function(e){this._editable({readonly:e===t?!0:e,disable:!1})},enable:function(e){this._editable({readonly:!1,disable:!(e=e===t?!0:e)})},destroy:function(){var e=this;e.element.add(e._text).add(e._upArrow).add(e._downArrow).add(e._inputWrapper).off(y),e._upArrowEventHandler.destroy(),e._downArrowEventHandler.destroy(),e._form&&e._form.off("reset",e._resetHandler),s.fn.destroy.call(e)},min:function(e){return this._option("min",e)},max:function(e){return this._option("max",e)},step:function(e){return this._option("step",e)},value:function(e){var n,i=this;return e===t?i._value:(e=i._parse(e),n=i._adjust(e),e===n&&(i._update(e),i._old=i._value),t)},focus:function(){this._focusin()},_adjust:function(e){var t=this,n=t.options,i=n.min,r=n.max;return e===H?e:(i!==H&&i>e?e=i:r!==H&&e>r&&(e=r),e)},_arrows:function(){var t,r=this,a=function(){clearTimeout(r._spinning),t.removeClass(D)},o=r.options,s=o.spinners,l=r.element;t=l.siblings(".k-icon"),t[0]||(t=e(n("n",o.upArrowText)+n("s",o.downArrowText)).insertAfter(l),t.wrapAll('<span class="k-select"/>')),s||(t.parent().toggle(s),r._inputWrapper.addClass("k-expand-padding")),r._upArrow=t.eq(0),r._upArrowEventHandler=new i.UserEvents(r._upArrow,{release:a}),r._downArrow=t.eq(1),r._downArrowEventHandler=new i.UserEvents(r._downArrow,{release:a})},_blur:function(){var e=this;e._toggleText(!0),e._change(e.element.val())},_click:function(e){var t=this;clearTimeout(t._focusing),t._focusing=setTimeout(function(){var n,i,a,o=e.target,s=r(o)[0],l=o.value.substring(0,s),u=t._format(t.options.format),c=u[","],d=0;c&&(i=RegExp("\\"+c,"g"),a=RegExp("([\\d\\"+c+"]+)(\\"+u[S]+")?(\\d+)?")),a&&(