我想从元素的data属性中获取的值中删除连字符,然后使用所述值作为元素的内容。这是我尝试过的:
HTML
<div id="output" data-value="-17"></div>
使用Javascript / JQuery的
$('#output').text(($('#output').data('value')).replace('-','');
我也尝试过:
$('#output').text($('#output').data('value').replace('-','');
我做错了什么
答案 0 :(得分:3)
您的代码中缺少)
,导致语法错误。但是,为简单起见,您可以使用函数重载。
$('#output').text(function(_,txt) {
return $(this).attr('data-value').replace('-','');
});
另外,你还没有将jQuery包含在小提琴中。此外,您最好使用attr
,其返回String
,data
返回Number
,您必须转换为String
-17
是Number
。
答案 1 :(得分:1)
你的括号看起来有些混乱,试试这个
$('#output').text($('#output').data('value').replace('-',''));
答案 2 :(得分:1)
答案 3 :(得分:1)
$('#output').text(Math.abs($('#output').data('value')));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="output" data-value="-17"></div>
答案 4 :(得分:0)
你应该这样做
$(document).ready(function () {
$("#output").text($('#output').attr('data-value').replace(/-/g, ""));
});
工作Fiddle