2012-11-20 131 views
1

我只是嘗試使用.replace() jQuery函數。它不起作用。替換。()不起作用

HTML:

<div class="try"> </div> 

JS:

var valr='r'; 
valr.replace('r', 't'); 
$('.try').prepend('<div> ' + valr + '</div>'); 

結果:我得到 'R',而我想獲得 'T'

爲什麼它不任何想法」工作?

+0

從[MDN文檔(https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/replace)_此方法不會更改所調用的String對象。它只是返回一個新的字符串._ – epascarello

回答

13

replace()(JavaScript函數,而不是jQuery的)返回一個字符串,試試這個:

var valr='r'; 
valr = valr.replace('r', 't'); 
$('.try').prepend('<div> '+valr+'</div>'); 

Docs for .replace() are here

+0

太好了,非常感謝。我儘快標記這一點。 –

+0

@JulietteDupuis no probs - 當你遇到類似問題時,請查看[MDN](https://developer.mozilla.org/en-US/docs/JavaScript/Reference) - 所有的JavaScript函數都記錄在那裏 – ManseUK

6

您需要保存的變量已經被替換後

valr = valr.replace('r','t'); 
5

首先,replace不是jQuery方法 - 它是純javascript。其次,它返回字符串的一個新實例,所以你需要:

valr = valr.replace('r', 't');