2013-03-29 28 views
1

我是jquery脚本编写新手,希望你能帮助我。 谷歌无法:(在输入时替换“umlaute”像ÄÖÜ

我试图得到一个jQuery脚本工作,以便替换“umlaute”,即“A”,“O”,... 当用户在文本框中输入。

如果用户写入的示例的,比它应该有AE自动替换

预先感谢您, 问候

- 编辑:

脚本,我有麻烦,是脚本下面。 它为一个字母(如果不和else),但不是我想多更换运行这个...

$(document).ready(function(){ 
    $("#uml").keyup(function(){ 
    $(this).val(function(i, v) { //index, current value 
     if(v=="ä") { return "ae"; } 
     if(v=="ö") { return "oe"; } 
     else 
     { 
     return v; 
     } 
}); }); 
}); 

在此先感谢!

+0

这些都是不同的字符,因此[这个答案](http://stackoverflow.com/q/6565480/901048)应指向你在正确的方向。 – Blazemonger

回答

4

参见the documentation用于JS字符串replace方法。

$(document).ready(function() { 
    $("#uml").keyup(function() { 
     var text = $(this).val(); 
     $(this).val(
      text.replace("ä", "ae") 
       .replace("ö", "oe") 
       .replace("ü", "ue") 
     ); 
    }); 
}); 

replace这种用法只替换目标字符串,因为你keyup运行这个应该是精细的单个实例。如果您需要更换每一个实例,但是,你会使用这样的:

text = text.replace(/ä/g,"ae"); 
+0

非常感谢你!这个对我有用! – Sascha

-2
$(document).ready(function($){ 
    $("#textFieldID").keyup(function(){ 
    var newVal = $(this).val(); 
    val.replace("emlaute","ÄÖÜ"); 
    $(this).val(newVal); 
    }); 
}); 
+0

感谢您的帮助,但它不适合我:( – Sascha

+0

无后顾之忧,很高兴有一个解决方案!:) –