替换功能不起作用

时间:2015-11-28 10:33:02

标签: javascript jquery replace

我想将“İ”字符替换为“i”。此代码完美无需页面中的其他jquery库。但它不适用于自动完成脚本。

$k(document).ready(function(){   
    $k(".replace").on("keyup", function(){
        str = $k(this).val();
        var dizi = { "İ": "i" };
        str = str.replace(/(([İı]))+/g, function(harf){ return dizi[harf];     })
        $k(this).val(str);
    });   
});

有没有办法解决它或任何其他代码可以使用。

...谢谢

1 个答案:

答案 0 :(得分:1)

您也可以使用

触发功能
$(document).ready(function(){
  $('.replace').focusout(function(){
      str = $(this).val();
      var dizi = { "İ": "i" };
      str = str.replace(/(([İı]))+/g, function(harf){ return dizi[harf];});
      $(this).val(str);
   }).keyup(function() {
      str = $(this).val();
      var dizi = { "İ": "i" };
      str = str.replace(/(([İı]))+/g, function(harf){ return dizi[harf];});
      $(this).val(str);
   });
 });

<强>更新

$(document).ready(function(){
    $(document).delegate('.ac_even', 'click', function(){
        str = $('.replace').val();
        str = str.replace('İ', 'i'); 
        $('.replace').val(str);
    });
    $('.replace').focusout(function(){
      str = $(this).val();
      str = str.replace('İ', 'i');
      $(this).val(str);
   }).keyup(function() {
      str = $(this).val();
      str = str.replace("İ", "i");
      $(this).val(str);
   });
});

请参阅: How do you trigger autocomplete "select" event manually in jQueryUI?

所以如果你专注,这将有效,如果你在键盘上点击输入/ textarea并做一些事情。