2

我有代码:

$("#txtDescription").blur(function(){
    $("#txtDescription").text($("#txtDescription").text().replace('@', ''));
})

删除@符号是有人将其复制到文本区域中。这样做的问题是,在 IE(所有版本)中,它还会删除添加的任何换行符,并将所有文本添加到带有空格的单行中。另一个问题是,如果我将信息保存到数据库表中,换行符实际上就在那里,所以它似乎只是一个视觉上的东西。如果用户认为他们的信息都在一行上,那就不好了。

如果用户粘贴到文本区域,是否有人对如何删除字符有任何建议?

4

3 回答 3

2

如果#txtDescription<textarea>你的帖子所建议的那样,那么你想使用 jQuery 的val函数而不是text.

于 2012-04-12T04:15:07.610 回答
1
$("#txtDescription").blur(function(){
    $(this).val(function(i,val){
        return val.replace('@', '')
    });
});
于 2012-04-12T04:16:33.397 回答
1
$("#txtDescription").blur(function(){
    var newval = $(this).val().replace('@','');
    $(this).val(newval);
})
于 2012-04-12T04:19:52.233 回答