[英]Replace Text in val with array - jquery
我正在尋找用數組替換文本區域值中的文本。 我已經看過如何用值替換文本
$("#mySelector").val(function(i, v) { //index, current value
return v.replace("#","Custom Text");
});
但是我要替換多個項目。 我在多個值之間嘗試了&&,但顯然做錯了。
這是我到目前為止的內容:
$(document).ready(function() {
$('#submit').click(function() {
var array = [];
array[0] = '#1', 'Value 1';
array[1] = '#2', 'Value 2';
array[2] = '#3', 'Value 3';
$('#article').val(function(i,v) {
return v.replace(
'$VET','Sebastian Vettel' &&
'$VETf','Sebastian'
);
});
return false;
});
});
數組在那里,但是我想知道如何在返回v.replace函數中使用它。 我的jQuery非常基本,因此是我的問題。 任何想法表示贊賞,謝謝。
如果要替換多個字符串,則應使用幾種.replace()
方法:
return v.replace('str1','Sebastian Vettel')
.replace('str2','Sebastian');
除了使用多個.replace()
方法,您還可以使用一個對象:
var chars = {
'#1': 'Value 1',
'#2': 'Value 2'
};
$('#article').val(function(i, v) {
for(k in chars) {
if (chars.hasOwnProperty(k))
v = v.replace(k, chars[k]);
}
return v;
});
您需要像這樣將替換鏈接在一起:
。 $(document).ready(function(){
$('#submit')。click(function(){
var array = [];
array[0] = '#1', 'Value 1';
array[1] = '#2', 'Value 2';
array[2] = '#3', 'Value 3';
$('#article').val(function(i,v) {
return v.replace(
'$VET','Sebastian Vettel').replace(
'$VETf','Sebastian'
);
});
return false;
}); });
您需要遍歷數組並替換
$(document).ready(function () {
$('#submit').click(function () {
var array = [];
array[0] = ['#1', 'Value 1'];
array[1] = ['#2', 'Value 2'];
array[2] = ['#3', 'Value 3'];
$('#article').val(function (i, v) {
$.each(array, function (i, arr) {
v = v.replace(arr[0], arr[1]);
})
return v;
});
return false;
});
});
演示: 小提琴
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.