你不会用PHP做到这一点,你会用javascript做到这一点:
var el = document.getElementById("filename");
el.addEventListener('keyup', function(){
var replace = ['ä','å'];
var replacewith = 'a';
var replace1 = ['ö'];
var replacewith1 = 'o';
replace.forEach(function(letter){
el.value = el.value.replace(letter, replacewith);
});
replace1.forEach(function(letter){
el.value = el.value.replace(letter, replacewith1);
});
});
添加id="filename"
到输入元素此上班。您可以根据需要添加尽可能多的字母到替换阵列。 您还可以添加更多阵列来替换字母。
https://jsfiddle.net/dek5as1x/1
编辑:解几封信
var el = document.getElementById("filename");
el.addEventListener('keyup', function(){
var replaces = [['ä','å'],['ö','ø'],['ï','ì'],['ü','ù','û'],['ë','ê']];
var replacewith = ['a','o','i','u','e'];
replaces.forEach(function(letterGroup, index){
letterGroup.forEach(function(letter){
el.value = el.value.replace(letter, replacewith[index]);
});
});
});
在这里,你添加一个新的阵列([]
)来代替。然后,将所有字母添加到该数组,并将其转换为与该数组相同的字母。例如:['ê','ë','è']
。然后,将该字母添加到replacewith数组。字母来代替数组中的字母与替换中的对应数组具有相同的索引是非常重要的。 这个解决方案应该是一个更清洁的,当你有很多字母来替换。
是的,没有,你不能使用PHP这只并且需要使用jQuery/AJAX这个工作,但是,我只建议使用jQuery/JS,因为它是做电缆什么您希望在用户每次写入字符时不必执行AJAX调用。 – Epodax