2017-04-18 3 views
2

Ich verwende jQuery Plugin (jquery.mask.js-v1.14.10), um Telefonnummern in einem Format zu maskieren: - (000) 000-0000.jQuery Masked Input Plugin: Falsche Cursorposition in Phone Masking

ich unter jQuery-Code verwenden: -

$("body").on("input propertychange", ".USMobileFormat", function (e) {    
      $(this).attr('maxlength', '14'); 
      $(this).mask('(000) 000-0000'); 
}); 

Als ich die erste Ziffer eingeben, kommt Mauszeiger vorher eingegebene Ziffer.

Bsp: - Angenommen, meine Telefonnummer ist 586 ****, hier ist die erste Ziffer 5 und ich habe es dann Cursor kommt vor 5 so schafft es ein Problem, wenn ich die 2. Stelle hier 8 eingeben, also meine eingegeben Die Nummer wäre "(85".

Ich habe noch ein Problem: - Wenn ich die zweitletzte Stelle der Telefonnummer ersetze, geht der Cursor zur letzten Position der Textbox (soll die zweitletzte Position sein) auch falsch. TIA.

+0

mit demselben Problem konfrontiert :( –

Antwort

0

einfaches und einfaches Beispiel unten. ich habe Maske Verwendung Ace-Admin Thema jquery Telefon. Sie den Link speichern sie öffnen können, verwenden Sie als lokale

<!DOCTYPE html> 
<html> 
<head> 
<title>Page Title</title> 
</head> 
<body> 

<h1>This is a Heading</h1> 
<p>This is a paragraph.</p> 

<input class="form-control input-sm input-mask-phone valid" id="PhoneNumber" name="PhoneNumber" type="text" value=""> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script> 
<script src="http://ace.jeka.by/assets/js/jquery.maskedinput.min.js"></script> 


    <script> 
    jQuery(function ($) { 
     $.mask.definitions['~'] = '[+-]'; 
     $('.input-mask-phone').mask('(999) 999-9999'); 
    }); 
    </script> 

</body> 
</html>