2017-11-20 17 views
0

インデックス番号を見つけてその値を1つ増やす必要があります 以下は私のコードです。その中でvar newNの結果はCmsQuestionaire[9].ChildQuestioner[0].AnswerIdのようになります。特定の文字を見つけて値を置き換える方法

インデックスを見つけてChildQuestioner[0]とし、それを1つずつ増やしてください。

var oldN = $(this).attr('name'); 
var newN = oldN.replace('[' + suffix + ']', '[' + (parseInt(suffix) + 1) + ']'); 

答えて

1

ChildQuestionerのインデックスを更新する場合は、正規表現とstring#replaceを使用できます。正規表現を使用してChildQuestionerのインデックスを取得し、string#replaceを使用してその値を更新します。

var oldN = 'CmsQuestionaire[9].ChildQuestioner[0].AnswerId'; 
 
var suffix = +oldN.match(/(\d+)/g)[1]; 
 
var t = 0; 
 
var newN = oldN.replace(/(\d+)/g, function(match){ 
 
t++; 
 
return (t==2) ? +match + 1 : match; 
 
}); 
 
console.log(newN);

0

値を属性に再度適用する必要があります。

0

正規表現(正規表現)を使用して同じことができます。 例: スペースを#キーに置き換えたい場合は、以下を参照してください。

var replacedString = yourString.replace(/\ /g, "#"); 

/グラム - あなたはスペースの代わりに任意の文字を指定することができ、上記のようなグローバル

としてそれを定義することです。

関連する問題