Creé una función para reemplazar el punto (.) en purnviraam, funciona bien. pero si necesitamos insertar ". " nuevamente en el área de texto, he creado un botón cerca del área de texto con función. inserta un punto"." pero presionando shift, también se convierte en purnviraam. Por favor, guíame, no tengo mucho conocimiento de la codificación js.
$(function() { $('textarea').on("keyup", function(e) { var val = $(this).val(); var str = val.replace('.', String.fromCharCode(2404)); $(this).val(str); }); }); function myFunction1() { insertfullstop.data.value += '.'; document.getElementById("data").focus(); } <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table> <tr> <td colspan="1"> <form id="insertfullstop"> <textarea type='text' id="data" class="js-copytextarea" style="width: 100%; max-width: 400px; height: 200px; border-radius: 6px 6px 6px 6px;" name="data" autofocus="" placeholder="Start Type Here................"></textarea> </form> </td> </tr> <tr align="right"> <td style="padding-top: 5px; float='center' padding-left: 1px; " colspan="1"> <strong style="font-size: 16px;"></strong> <button id="fullstop" OnClick="myFunction1()" class="btn1" title="Full Stop" type="button">.</button> </td> </tr> </table>El problema es que lo reemplazas. con | en CADA evento keyup, lo que significa que; puede agregar el punto con su función correctamente, pero cuando escribe el área de texto, reemplazará el punto agregado previamente con |
Para resolver esto: verifique si el carácter escrito es un punto o no. Si es un punto, solo entonces, reemplácelo con un |. De esta manera, no reemplazará el punto agregado anteriormente.