javascript - 使用数组替换多个字符串

标签 javascript php jquery arrays

我需要一个数组来做到这一点:

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});

这是我加载页面时遇到的错误:

error

最佳答案

您正在使用 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/

相关文章:

php `require()` 一个包含另一个 `require()` 的文件

php - 通过数据库查询对同一天在 PHP 中创建的 Unix 时间戳中的所有行进行排序

jQuery 动态 Canvas 创建,$ctx.getContext 不是函数

javascript - 找到 JQuery 元素但不可点击

javascript - Angular 路由无法正常工作

javascript - 计算 javascript 和 Ruby on Rails 中的字符串长度

php - 如何获取相对目录,无论它包含在 PHP 中的哪个位置?

javascript - 带有预加载器的 jQuery 图像淡入淡出

javascript - 更改图表的宽度和高度(Echarts库)

javascript - 尝试将按钮背景设置为数组中的随机颜色