使用 Jquery 进行文本自动格式化:转换 --> 为 →

Use Jquery for text autoformatting: convert --> to →

如何让 jquery/javascript 检测何时在文本字段中键入 --> 并将其替换为

像下面这样的事情是最好的方法吗:

$("input").on("keyup paste", function() {

  var content = $(this).html(),
  arrow =  "→";
  content = content.replace(regex, arrow);
  $(this).html(content);

});

您可以使用 String#replace 和正则表达式来替换所有出现的字符串。

注:input个元素有value,用val()取值

$("input").on("keyup paste", function () {
    $(this).val(function (i, val) {
        return val.replace(/-->/g, '→');
    });
});

$("input").on("keyup paste", function () {
    $(this).val(function (i, val) {
        return val.replace(/-->/g, '→');
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" />

我建议使用 change 事件而不是 keyup

试试这个:

$("input").on("keyup paste", function() {
  var content = $(this).val();
  arrow =  "→";
  content = content.replace(/-->/g, arrow);
  $(this).val(content);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='text' />