输入中的单独文本

时间:2013-09-25 21:09:44

标签: javascript jquery html

我只需输入html,例如:

<input class="check" type="text" />

我想输入此输入文字,用分隔。例如:

aaa# bbb# ccc# ddd

但是如何在#不是空格之前和#是空格之后检查并替换为jQuery?

例如:

 aaa # bbb#ccc#ddd# eee

应该替换为:

 aaa# bbb# ccc# ddd# eee

等。

jsfiddle

2 个答案:

答案 0 :(得分:4)

如果我理解你正在尝试做什么,那么你可以使用regular expression

text.replace(/\s*#\s*/g, '# ')

如果您想对课程check的所有输入执行此操作,您可以执行以下操作:

$('#replace').click(function(){
    $('.check').each(function() {
        $(this).val($(this).val().replace(/\s*#\s*/g, '# '));
    });
});

(fiddle)

答案 1 :(得分:1)

这是(非正则表达式)解决方案。它会拆分字符串,修剪它并在每个项目之间添加'# '

Demo

$('#replace').click(function(){
    $.each($('.check'), cleanup);
});

function cleanup() {
    var result = '';
    var items = $(this).val().split('#');
    for (var i = 0; i < items.length; i++) {
        result += (i == 0 ? '' : '# ');
        result += $.trim(items[i]);
    }
    $(this).val(result);
}