jQuery从字符串中移除字符串
我想从jQuery中的字符串中移除一个字符串。jQuery从字符串中移除字符串
这里是字符串:
username1, username2 and username3 like this post.
我想从列表中删除username1,
。 我尝试使用.split(', ')
将列表添加到数组中,但出现错误。我假设这个错误是因为不是每个单词后都有逗号。
我一直想从列表中删除第一项。 username1
只是一个示例用户名。如果他们喜欢这篇文章,第一项将始终是当前登录用户的用户名。
我曾尝试:
var updated_list = $('#post_like_list').html().replace('username1, ', '');
$('#post_like_list').html(updated_list);
但是这并没有更新列表。但是,当使用.text()
而不是.html()
时,它会更新列表,但我需要保留列表中的链接。
很确定你只是想要简单的旧的替换功能。使用这样的:
myString.replace('username1','');
我想,如果你想删除后面的逗号做到这一点,而不是:
myString.replace('username1,','');
编辑:
这里是该网站的具体代码:
jQuery("#post_like_list-510").text().replace(...)
我试过了,得到了错误(firebug)jQuery(“#post_like_list-510”)。replace不是函数 – 2011-02-23 18:09:55
@carl,这是因为myString变量只是一个字符串,而不是一个jquery对象。 jQuery('#post_like_list-510')。text()。replace(...) – 2011-02-23 18:11:07
你可能想要jQuery('#post_like_list-510').val()。replace(...) – matei 2011-02-23 18:11:43
如果你只是想删除“username1”,你可以使用一个简单的替换。
name.replace("username1,", "")
或像你提到你可以使用分裂。
var name = "username1, username2 and username3 like this post.".split(",")[1];
$("h1").text(name);
jsfiddle例如
我认为文本“USERNAME1”只是什么最终将成为一个实际用户名的占位符。假设,
- 如果用户名是不不允许有空格,则只需搜索一切第一空格或逗号(之前从而找到既“U1喜欢这个”,“U1,U2和U3一样这个”)。
- 如果它是被允许有一个空间,那么在将它发送到客户端之前,然后只使用span标记,将每个用户名包装在它自己的
span
标记服务器端可能会更容易。
要在纳丹·冈萨雷斯答案补充,请注意,您需要调用replace
功能之后的更换对象分配,因为它不是一个赋值函数功能:
myString = myString.replace('username1','');
相当肯定没有人回答你的问题,以你的确切来说,你想为动态文本
var newString = myString.substring(str.indexOf(",") +1, myString.length);
它从第一个逗号一子,到最后
工程很好!我只是用'myString'取代'str'来提供工作解决方案。 – Jonny 2016-10-01 12:01:31
这个字符串是以JS中的数组开始还是什么?基于这个问题的答案可能是:.replace('username1,',''),但我怀疑这是你的后... – Rob 2011-02-23 18:10:32
请在您的问题中发布相关的代码。如果您遇到错误,请提供您使用的代码,以便发现错误。 – user113716 2011-02-23 18:12:30
你必须澄清:'username1'总是一样吗?你总是想删除* first *的名字,或者你想删除一个特定的名字吗?这不是一个jQuery问题,它是一个JavaScript问题。 – 2011-02-23 18:17:44