你不會用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