2016-10-26 28 views
0

前插值我有一個變量var字符串的字符串值可以是更換或通過jQuery的

var string = '$ <input id='text'>'; 

OR

var string = <input id='text'>; 

我需要<input...之前更換任何它是否可能是$或任何單詞。如果什麼都不存在需要預先在var newValue中的新值。

我試過了,如下所示,但只有在輸入標籤之前有東西存在才能正常工作。

function replaceValue(newVal) { 
    amount.html(amount.html().replace(/[^\s]+/, newVal)); 
} 

有什麼辦法,我可以預先設置的值,如果不輸入標籤之前存在無論如何和限制<input...不應該被替換?

+0

爲什麼之前不'創建''span''標籤'輸入''標記..然後用js來設置它的值? –

+0

不,我不能只把那些標籤放在單個標籤上,這對我來說是個限制,對不起,在這個問題上沒有提到 – jitendrapurohit

+0

@jitendrapurohit你也可以嘗試這樣的東西:[JSFiddle](https://jsfiddle.net/RajeshDixit/15Lrvkb9 /) – Rajesh

回答

2

切斷輸入前的所有內容並預先添加要替換的字符串。

要解決你的代碼,你會怎麼做:

function replaceValue(newVal) { 
    amount.html(newVal + amount.html().slice(amount.html().indexOf('<input'))); 
} 

,沒有jQuery的一個可運行的例子可以在這裏找到:https://jsfiddle.net/rffxbfhj/

+1

按預期工作。非常感謝! – jitendrapurohit

+0

真棒聽到! – PaulBGD