我需要一个数组来做到这一点:
Hi {nom}, you can buy {var1}
发送前看起来像这样:
Hi Manuel, you can buy chips.
我尝试用这样的数组来做到这一点:
$(document).on('click','.submitMessage', function(){
prevContent=$('textarea').val();
$variables = array(
'{nom}' => 'Manuel',
'{apl}' => 'García',
'{var1}' => 'chips',
'{var2}' => 'deportes y aventura',
'{var3}' => 'informática y tecnología',
'{cst1}' => 'Serrano, 28',
'{cst2}' => 'Plaza del carmen, 32',
'{cst3}' => 'García Luna, 15'
);
$data = prevContent;
$data = str_replace(array_keys($variables), array_values($variables), $data);
$.post('../actions/newMessage.php',{ms_content:$data});
这是我加载页面时遇到的错误:
最佳答案
您正在使用 PHP 而不是 Javascript:
您可以按照以下方式进行
prevContent='Hi {nom}, you can buy {var1}';
variables = {
'{nom}' : 'Manuel',
'{apl}' : 'García',
'{var1}' : 'chips',
'{var2}' : 'deportes y aventura',
'{var3}' : 'informática y tecnología',
'{cst1}' : 'Serrano, 28',
'{cst2}' : 'Plaza del carmen, 32',
'{cst3}' : 'García Luna, 15'
};
$.each(variables, function (key, value) {
prevContent = prevContent.replace(key, value);
});
console.log(prevContent);
关于javascript - 使用数组替换多个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30098254/