Javascript 用换行符替换跨距中的字符
我试着在几个小时内做一件小事,但我不知道为什么什么都不适合我 问题是,我想用类“variant”获取每个span,并以一种方式更改其内容,即每个“;”分号都将替换为换行符。我已经尝试了几十种解决方案,但都没有效果Javascript 用换行符替换跨距中的字符,javascript,jquery,html,Javascript,Jquery,Html,我试着在几个小时内做一件小事,但我不知道为什么什么都不适合我 问题是,我想用类“variant”获取每个span,并以一种方式更改其内容,即每个“;”分号都将替换为换行符。我已经尝试了几十种解决方案,但都没有效果 <span class="variant">Coin Wallet: Yes (+7,5 €); Business Card Holder: No; Monogram + 16,25 € (max. 10 symbols): </span> 硬币钱包:是(+7
<span class="variant">Coin Wallet: Yes (+7,5 €); Business Card Holder: No; Monogram + 16,25 € (max. 10 symbols): </span>
硬币钱包:是(+7.5欧元);名片持有人:否;花押字+16,25欧元(最多10个符号):
我尝试过以下解决方案:
$(document).ready(function() {
var text = $(".variant").val().replace(/\;/g, "<br>");
$(".variant").val(text);
});
$(文档).ready(函数(){
var text=$(“.variant”).val().replace(/\;/g,“
”);
$(“.variant”).val(文本);
});
或
$(文档).ready(函数(){
$(“.variant”).replaceText(/;/gi,“
”);
});
Span元素没有值。因此,您可以使用html()
和text()
设置或获取它们的内容。唯一具有值的元素是输入元素,您可以在其中使用val()
硬币钱包:是(+7.5欧元);名片持有人:否;花押字+16,25欧元(最多10个符号):
代替
使用jQuery方法使用
“variant”遍历所有
元素并替换
$("#replace").click(function(){
$("span[class='variant']").each(function() {
var text = $(".variant").html().replace(/\;/g, "<br>");
$( this ).html(text);
});
});
$(“#替换”)。单击(函数(){
$(“span[class='variant']){
var text=$(“.variant”).html().replace(/\;/g,“
”);
$(this).html(文本);
});
});
Fiddle:展示你的努力,即使是不正确的html代码也足够了。你需要分享html标记和你尝试过的js。提供一个简短的伪代码/想法如何实现这一点。然后我们可以查看您缺少的内容。您应该尝试使用,html()而不是.val()。@Bruno工作起来很有魅力!感谢您不要使用此行:var text=$(“.variant”).html()。替换(/\;/g,“
”);使用此变量而不是.variant,否则它将使用在第一个.variant范围中找到的第一个内容替换每个实例。
<span class="variant">Coin Wallet: Yes (+7,5 €); Business Card Holder: No; Monogram + 16,25 € (max. 10 symbols): </span>
<button id="replace">Replace!</button>
$("#replace").click(function(){
$("span[class='variant']").each(function() {
var text = $(".variant").html().replace(/\;/g, "<br>");
$( this ).html(text);
});
});