|  | @@ -159,13 +159,17 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                          SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  |                          return;
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    const num = parseFloat(validText);
 | 
	
		
			
				|  |  | -                    if (validText !== null && (num < 0 || !/^(\d{1,10})?$/.test(num))) {
 | 
	
		
			
				|  |  | +                    const num = parseFloat(validText.toPrecision(10));
 | 
	
		
			
				|  |  | +                    if (validText !== null && num < 0) {
 | 
	
		
			
				|  |  |                          toastr.error('请输入10位以内有效数字并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  |                          SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  |                          return;
 | 
	
		
			
				|  |  | -                    } else if (validText !== null && !/^(\d{1,7}\.\d{1,3})?$/.test(num)) {
 | 
	
		
			
				|  |  | -                        toastr.warning('已保留3位小数');
 | 
	
		
			
				|  |  | +                    } else if (validText !== null) {
 | 
	
		
			
				|  |  | +                        if(!Number.isInteger(num) && !/^(\d{1,10}\.\d{1,3})?$/.test(num)) {
 | 
	
		
			
				|  |  | +                            toastr.warning('已保留3位小数');
 | 
	
		
			
				|  |  | +                        } else if (validText.toString().length > 11) {
 | 
	
		
			
				|  |  | +                            toastr.warning('已保留10位有效数字');
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  |                          // SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  |                          // return;
 | 
	
		
			
				|  |  |                          validText = ZhCalc.round(num, 3);
 | 
	
	
		
			
				|  | @@ -307,6 +311,7 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                  numberCan: {type: 'error', msg: '请粘贴10位以内有效数字并且小于3位小数的浮点数'},
 | 
	
		
			
				|  |  |                  numberCan2: {type: 'error', msg: '请粘贴0~1范围内并且小于3位小数的浮点数'},
 | 
	
		
			
				|  |  |                  numberCan3: {type: 'warning', msg: '已保留3位小数'},
 | 
	
		
			
				|  |  | +                numberCan4: {type: 'warning', msg: '已保留10位有效数字'},
 | 
	
		
			
				|  |  |                  weightNumberCan: {type: 'error', msg: '粘贴的加权系数总和不能大于1'},
 | 
	
		
			
				|  |  |              };
 | 
	
		
			
				|  |  |              const range = info.cellRange;
 | 
	
	
		
			
				|  | @@ -354,18 +359,17 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                              bPaste = false;
 | 
	
		
			
				|  |  |                              continue;
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  | -                        const num = parseFloat(validText);
 | 
	
		
			
				|  |  | -                        // if (validText !== null && (num < 0 || !/^(\d{1,10}|\d{1,7}\.\d{1,3})?$/.test(num))) {
 | 
	
		
			
				|  |  | -                        //     toastMessageUniq(getPasteHint(hint.numberCan, hintRow));
 | 
	
		
			
				|  |  | -                        //     bPaste = false;
 | 
	
		
			
				|  |  | -                        //     continue;
 | 
	
		
			
				|  |  | -                        // }
 | 
	
		
			
				|  |  | -                        if (validText !== null && (num < 0 || !/^(\d{1,10})?$/.test(num))) {
 | 
	
		
			
				|  |  | +                        const num = parseFloat(validText.toPrecision(10));
 | 
	
		
			
				|  |  | +                        if (validText !== null && num < 0) {
 | 
	
		
			
				|  |  |                              toastMessageUniq(getPasteHint(hint.numberCan, hintRow));
 | 
	
		
			
				|  |  |                              bPaste = false;
 | 
	
		
			
				|  |  |                              continue;
 | 
	
		
			
				|  |  | -                        } else if (validText !== null && !/^(\d{1,7}\.\d{1,3})?$/.test(num)) {
 | 
	
		
			
				|  |  | -                            toastMessageUniq(getPasteHint(hint.numberCan3, hintRow));
 | 
	
		
			
				|  |  | +                        } else if (validText !== null) {
 | 
	
		
			
				|  |  | +                            if(!Number.isInteger(num) && !/^(\d{1,10}\.\d{1,3})?$/.test(num)) {
 | 
	
		
			
				|  |  | +                                toastMessageUniq(getPasteHint(hint.numberCan3, hintRow));
 | 
	
		
			
				|  |  | +                            } else if (validText.toString().length > 11) {
 | 
	
		
			
				|  |  | +                                toastMessageUniq(getPasteHint(hint.numberCan4, hintRow));
 | 
	
		
			
				|  |  | +                            }
 | 
	
		
			
				|  |  |                              // SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  |                              // return;
 | 
	
		
			
				|  |  |                              validText = ZhCalc.round(num, 3);
 |