我有一個字符串被修改了幾個string.replace('x','y')
,這些替換的命令被複選框激活,並且我還沒有能夠自動取消選中其中一個複選框時自動取消該過程。我發現的唯一解決方案是在取消選中複選框時執行string.replace('y','x')
... 是否有任何其他方式更清潔?取消一個字符串。更換
回答
首先,做與string.replace( 'X', 'Y'),然後與string.replace( 'Y', 'X')撤消它不會工作。這裏的原因:
開始字符串: 「zxyxz」 與string.replace( 'X', 'Y')給你 「zyyyz」 與string.replace( 'Y', 'X')然後給你「zxxxz 「,這顯然不是你開始的。
這裏有一個撥弄你想要什麼,我認爲:
http://fiddle.jshell.net/XZE9v/1/
它將每一個複選框,單擊/未點擊的時間重新申請的規則。
如果你還看不出來這裏是代碼:
HTML:
<form id="myForm">
<input type="text" id="originalText" />
<br/>
a|x<input type="checkbox" data-find="a" data-replace="x" onclick="updateRegex()" />
<br/>
b|y<input type="checkbox" data-find="b" data-replace="y" onclick="updateRegex()" />
<br/>
c|z<input type="checkbox" data-find="c" data-replace="z" onclick="updateRegex()" />
</form>
<br/>
<div id="display"></div>
JS:
function updateRegex() {
var original = document.getElementById("originalText").value;
var newString = original;
var elems = document.getElementById("myForm").childNodes;
for(var i=0; i<elems.length; i++)
{
if ("checkbox" == elems[i].type && elems[i].checked)
{
var regexp = new RegExp(elems[i].getAttribute("data-find"), 'g');
newString = newString.replace(regexp, elems[i].getAttribute("data-replace"));
}
}
document.getElementById("display").innerHTML = newString;
}
Woops,貼錯了小提琴;我編輯並把正確的一個。 – Lebowski156
那麼這就是我所做的,我只是通過規則運行原始的每一個複選框被選中和取消選中....感謝很多快速的答案! – Lou
創建一個包含初始字符串值的數組。對陣列執行所有複選框操作。使用此數組獲取最終輸出字符串。
var array = ['Moe','Chuck','Larry']
function findItem(val){
var index = array.indexOf(val);
if(index != -1){
array[index] = val;
}
}
function onSubmit(){
return array.toString();
}
- 1. 更換一個字符用另一個字符串中的
- 2. 更換一個字符串到位
- 3. 如何更換*(在一個字符串
- 4. 更換兩個字符串
- 5. 更換另一個字符串的字符串的
- 6. 如何更換多個字符在一個字符串中
- 7. 與str_replace函數僅更換取消註釋字符串在PHP
- 8. 替換一個字符串。
- 9. 換一個字符串,並與消息替換如果爲空
- 10. 將一個字符串轉換爲另一個字符串
- 11. 用一個StringBuffer子字符串替換一個子字符串
- 12. 取締一個字一個字符串
- 13. 更改一個字符串
- 14. 如何更換一個特定的字符串中的整個字符串
- 15. 轉換一個字符串轉換爲字符串
- 16. 替換字符串轉換成另一個字符串
- 17. 用另一個字符串替換字符串中的字符?
- 18. 讀取一個字符串直到關鍵字,並用UNIX中的另一個字符串替換字符
- 19. 用另一個字符串替換字符串的第一個字符
- 20. 多串用一個字符串替換
- 21. 用另一個字符串替換字符串的一部分
- 22. 獲取一個字符串,並用新的替換一個div
- 23. 將幾個字符串轉換爲一個字符串
- 24. Java的轉換兩個字符串一個字符串
- 25. 多個字符串替換(在同一個字符串中)
- 26. Greasemonkey,每秒更換一次字符串
- 27. 從一個字符串中取一個字符並將其轉換爲int c
- 28. 用一個字符替換字符串中的整個字符
- 29. 用一個字符替換字符串中的多個字符
- 30. 更換字符後在兩個字符中分隔字符串
只要保持原始字符串從變換分開。 –
對不起,你在問什麼?只需存儲原始字符串? –
請向我們展示您的代碼。 – Bergi