找到此代码以查找和替换
var f = ['Rd','St','Ave'];
var r = ['Road','Street','Avenue'];
var re = $.map(f, function(v,i) {
return new RegExp('\\b' + v + '\\b', 'g');
});
jQuery('#colCenterAddress').val(function(i,val) {
$.each(f,function(i,v) {
val = val.replace(re[i],r[i]);
});
return val;
});
jQuery find and replace with arrays 谢谢 https://stackoverflow.com/users/1106925/squint
它真的很棒,但我想重构使用键值数组
var fr ={
"Rd" : "road",
"St" : "Street",
"Ave" : "Avenue",
};
非常新的jQuery任何帮助都会很棒
答案 0 :(得分:2)
尝试
var re = $.map(fr, function (v, k) {
return {
regex: new RegExp('\\b' + k + '\\b', 'g'),
value: v
};
});
jQuery('#colCenterAddress').val(function (i, val) {
$.each(re, function (i, obj) {
val = val.replace(obj.regex, obj.value);
});
return val;
});
演示:Fiddle