2014-10-08 46 views
-1

我有一個腳本,我們想以某種方式使它更小,而不是重複它很多次。無論如何要縮短這段代碼,所以我們不必重複創建10次。Javascript表格縮短 - 編碼爲UTF-8轉換

在文本框,我們有這樣的:

onKeyUp="replaceWordChars(this.value) 
onKeyUp="replaceWordChars2(this.value) 
onKeyUp="replaceWordChars3(this.value) 

<script> 
function replaceWordChars(text) { 
var s = text; 
s = s.replace(/[\u2018|\u2019|\u201A]/g, "\'"); 
s = s.replace(/[\u201C|\u201D|\u201E]/g, "\""); 
s = s.replace(/\u2026/g, "..."); 
s = s.replace(/[\u2013|\u2014]/g, "-"); 
s = s.replace(/\u02C6/g, "^"); 
s = s.replace(/\u2039/g, "<"); 
s = s.replace(/\u203A/g, ">"); 
s = s.replace(/[\u02DC|\u00A0]/g, " "); 
document.getElementById("textcounter1").value = s;} 

function replaceWordChars2(text) { 
var s = text; 
s = s.replace(/[\u2018|\u2019|\u201A]/g, "\'"); 
s = s.replace(/[\u201C|\u201D|\u201E]/g, "\""); 
s = s.replace(/\u2026/g, "..."); 
s = s.replace(/[\u2013|\u2014]/g, "-"); 
s = s.replace(/\u02C6/g, "^"); 
s = s.replace(/\u2039/g, "<"); 
s = s.replace(/\u203A/g, ">"); 
s = s.replace(/[\u02DC|\u00A0]/g, " "); 
document.getElementById("textcounter2").value = s;} 

function replaceWordChars3(text) { 
var s = text; 
s = s.replace(/[\u2018|\u2019|\u201A]/g, "\'"); 
s = s.replace(/[\u201C|\u201D|\u201E]/g, "\""); 
s = s.replace(/\u2026/g, "..."); 
s = s.replace(/[\u2013|\u2014]/g, "-"); 
s = s.replace(/\u02C6/g, "^"); 
s = s.replace(/\u2039/g, "<"); 
s = s.replace(/\u203A/g, ">"); 
s = s.replace(/[\u02DC|\u00A0]/g, " "); 
document.getElementById("textcounter3").value = s;} 
</script> 

回答

1

確實存在:

function replaceWordChars(text,textcounter) { 
var s = text; 
s = s.replace(/[\u2018|\u2019|\u201A]/g, "\'"); 
s = s.replace(/[\u201C|\u201D|\u201E]/g, "\""); 
s = s.replace(/\u2026/g, "..."); 
s = s.replace(/[\u2013|\u2014]/g, "-"); 
s = s.replace(/\u02C6/g, "^"); 
s = s.replace(/\u2039/g, "<"); 
s = s.replace(/\u203A/g, ">"); 
s = s.replace(/[\u02DC|\u00A0]/g, " "); 
document.getElementById(textcounter).value = s; 
} 

調用它:

<... keyUp="replaceWordChars(this.value,this.id)" ...> 

replaceWordChars(text,"textcounter1"); 
replaceWordChars(text,"textcounter2"); 
replaceWordChars(text,"textcounter3"); 
從keyUp事件

+0

這沒有奏效。我有類似