jQuery的替换阵列 [英] jQuery replace with array

查看:126
本文介绍了jQuery的替换阵列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要和我的替代品名单,以取代textarea的内容。
让喜23将是\\ u041D \\ u0456 23。什么我的错误呢?

  $(#textarea的意见)。VAL(功能(我,VAL){
 返回val.replace(/ *的第一个字母(如A)* /克,*第二排例如\\ u0410 *);
});替换= {
    A:\\ u0410
    B:\\ u0412,
    C:\\ u0421
    H:\\ u041D,
    我:\\ u0406
    J:\\ u0408,
    的M:\\ u041C,
    O:\\ u041E
    P:\\ u0420,
    的S:\\ u0405,
    T:\\ u0422
    的V:\\ u0474,
    Y:\\ u04AE    一个:\\ u0430,
    C:\\ u0441
    E:\\ u0435
    H:\\ u04BB,
    我:\\ u0456
    J:\\ u0458,
    L:\\ u04C0,
    O:\\ u043E
    p的:\\ u0440,
    的s:\\ u0455,
    Y:\\ u0443
    v的:\\ u0475;
}


解决方案

  VAR替换= {
    A:\\\\ u0410
    B:\\\\ u0412,
    C:\\\\ u0421
    H:\\\\ u041D,
    我:\\\\ u0406
    J:\\\\ u0408,
    的M:\\\\ u041C,
    O:\\\\ u041E
    P:\\\\ u0420,
    的S:\\\\ u0405,
    T:\\\\ u0422
    的V:\\\\ u0474,
    Y:\\\\ u04AE,    一个:\\\\ u0430,
    C:\\\\ u0441
    E:\\\\ u0435
    H:\\\\ u04BB,
    老子:\\\\ u0456
    J:\\\\ u0458,
    L:\\\\ u04C0,
    O:\\\\ u043E
    p的:\\\\ u0440,
    的s:\\\\ u0455,
    Y:\\\\ u0443,
    v的:\\\\ u0475
}$(#textarea的意见)。VAL(功能(我,VAL)
{
    VAL = val.split('');    $。每个(VAL,功能(I,E){
        VAL [I] =替换[E]?替换[E]:电子;
    });    返回val.join('');
});

http://jsfiddle.net/6A2JG/

i want to replace the content of the textarea with the list of my "replacements". so that "Hi 23" is going to be "\u041D\u0456 23". whats my mistake?

$("textarea#comment").val(function(i, val) {
 return val.replace(/*the first letter (e.g. A)*/g, "*the second row e.g. \u0410*");
});

replacements = {
    "A": "\u0410",
    "B": "\u0412",
    "C": "\u0421",
    "H": "\u041D",
    "I": "\u0406",
    "J": "\u0408",
    "M": "\u041C",
    "O": "\u041E",
    "P": "\u0420",
    "S": "\u0405",
    "T": "\u0422",
    "V": "\u0474",
    "Y": "\u04AE",

    "a": "\u0430",
    "c": "\u0441",
    "e": "\u0435",
    "h": "\u04BB",
    "i": "\u0456",
    "j": "\u0458",
    "l": "\u04C0",
    "o": "\u043E",
    "p": "\u0440",
    "s": "\u0455",
    "y": "\u0443",
    "v": "\u0475";
}

解决方案

var replacements = {
    "A": "\\u0410",
    "B": "\\u0412",
    "C": "\\u0421",
    "H": "\\u041D",
    "I": "\\u0406",
    "J": "\\u0408",
    "M": "\\u041C",
    "O": "\\u041E",
    "P": "\\u0420",
    "S": "\\u0405",
    "T": "\\u0422",
    "V": "\\u0474",
    "Y": "\\u04AE",

    "a": "\\u0430",
    "c": "\\u0441",
    "e": "\\u0435",
    "h": "\\u04BB",
    "i": "\\u0456",
    "j": "\\u0458",
    "l": "\\u04C0",
    "o": "\\u043E",
    "p": "\\u0440",
    "s": "\\u0455",
    "y": "\\u0443",
    "v": "\\u0475"
}

$("textarea#comment").val(function(i, val)
{
    val = val.split('');

    $.each(val, function(i,e){
        val[i] = replacements[e] ? replacements[e] : e;
    });

    return val.join('');
});

http://jsfiddle.net/6A2JG/

这篇关于jQuery的替换阵列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆