1
我已經翻遍左右替換文本,並發現了一些有用的帖子做查找/查找/替換,jQuery的發現和基於鍵值對對象
,但我可以」弄不明白的工作,
這裏是網站的測試網址:
http://www.larryadowns.com.php5-1.dfw1-2.websitetestlink.com/
,你可以看到,這是一個博客飼料與崗位信息。我試圖定位日期月份,並進行搜索並替換每個放入西班牙語月份。
這裏的JavaScript中,這一切都包裹在一個jQuery(文件)。就緒()...
var monthMap = {
"January" : "Enero",
"February" : "Febrero",
"March" : "Marzo",
"April" : "Abril",
"May" : "Mayo",
"June" : "Junio",
"July" : "Julio",
"August" : "Agosto",
"September" : "Septiembre",
"October" : "Octubre",
"November" : "Noviembre",
"December" : "Diciembre"
};
// sift thru the post-info, replacing only the month with the spanish one.
$(".post-info .date").text(function(index, originalText) {
var moddedText = '';
for (var month in monthMap) {
if (!monthMap.hasOwnProperty(month)) {
continue;
}
moddedText = originalText.replace(month, monthMap[month]);
// moddedText = originalText.replace(new RegExp(month, "g") , monthMap[month]);
console.log("month : " + month);
console.log("monthMap[month] : " + monthMap[month]);
}
console.log('-------------------');
console.log('index : ' + index);
console.log("monthMap : " + monthMap);
console.log("originalText : " + originalText);
console.log("moddedText : " + moddedText);
return moddedText;
});
但很可惜,無論是.replace或與正則表達式的.replace真的取代任何東西。 我哪裏錯了? ty再次堆疊。
最優秀。非常感謝Goran。解決了。 很高興知道爲什麼,如果有人有這樣的答案,就會有 。 但無後顧之憂。 – joelrnorris 2012-07-09 16:27:44
沒問題,很高興我能幫到你。其實,現在我喝了咖啡,看起來很明顯。因爲它正在遍歷所有月份(即使在成功匹配之後),「originalText」覆蓋了早先成功替換的「moddedText」。因此,爲什麼只有十二月工作,因爲它沒有以下幾個月。 – 2012-07-09 16:44:52
輝煌!這就說得通了。沒有什麼比第二組眼睛... – joelrnorris 2012-07-09 17:21:38