我需要这样做,如果用户键入“魁北克”这个词的任意组合,它会自动将其重命名为魁北克市,这在任何情况下都需要发生。我遇到的问题是,如果单词中有任何空格,它将无法正常工作。我尝试修剪字符串,但它无法正常工作。这是我的代码,如果有任何我可以改进的话,请告诉我。
$('#location').on('blur', function() {
var field = $('#location').val();
$.trim(field);
switch (field) {
case 'Quebec' :
case 'QUEBEC' :
case 'Québec' :
$('#location').attr('value', 'Quebec City');
break;
}
})
$('#location').on('keypress', function() {
var field = $('#location').val();
$.trim(field);
switch (field) {
case 'Quebec' :
case 'QUEBEC' :
case 'Québec' :
$('#location').attr('value', 'Quebec City');
break;
}
})
答案 0 :(得分:1)
答案 1 :(得分:1)
这样的事情应该做,或者至少是一个好的开始:
$('#location').on('keyup blur', function() {
var field = this.value,
test = field.toLowerCase().replace('é','e').indexOf('quebec');
if (test!=-1 && field.slice(test, test+11)!='Quebec City') {
this.value = field.substring(0, test) + "Quebec City" + field.substring(test+6);
}
});
答案 2 :(得分:0)
适用于field = field.replace(/ /g, "");
这是一个有效的演示http://jsfiddle.net/KyGKf/1/