获取元素的内容并将值的百分比输出到同级元素中
Get content of element and output percentage of value into sibling element
我有一个包含一系列带有价格的产品的页面。在这些价格旁边的兄弟元素中,我需要输出原始价格的百分比值以及一些解释性报价文本。
元素没有id只是为了增加复杂性。
我的代码示例如下…
<div class="info">
<div class="figure">£<span>300.00</span></div>
<div class="offer"><!--percentage goes here--></div>
</div>
<div class="info">
<div class="figure">£<span>450.00</span></div>
<div class="offer"><!--percentage goes here--></div>
</div>
到目前为止,我的jquery是这样的…
var str = $( ".figure span" ).text();
$(".offer").html( str/100*5 ).prepend ("£").append( " spread over xx months" );
这将在'offer'div中正确返回22.5英镑,分xx个月。
如果我只在页面上使用一次,这很好,但是它会在页面上重复不同的数字,当我这样做时,百分比将不输出。所以我的问题是如何让它在重复元素上工作。
我还需要将结果数字精确到小数点后两位。我知道我应该使用。tofixed(2),但我不太确定应该如何在这里应用
下面是一个演示http://jsfiddle.net/4wXN7/2/
对于每个info图,获取其值并将其应用于下一个兄弟offer
$('.info .figure').each(function(){
var str = $(this).text().replace('£','');
$(this).next().html( (str/100*5).toFixed(2) ).prepend ("£").append( " spread over xx months" );
});
如果我理解正确的话,你想用类"offer"来设置每个div。你可以这样做:
$('.offer').each(function() {
// do your stuff here
$(this).text('Put your value here');
});
这段代码循环使用类"offer"遍历所有div。我希望这对你有帮助。
相关文章:
- 重定向Firefox'的web控制台输出到页面元素
- XSLT:在元素标记中输出Javascript
- 创建视频播放器(Quicktime浏览器插件)React元素,输出缺少的视频属性
- ckeditor更改生成了段落元素的输出
- 输出表示img元素不存在(为null),但脚本在img的实现下面,并使用了onload()
- Chrome console.log(elementID)在控制台中输出元素
- 在事件发生时获取元素位置的当前页面 URL,并将该 URL 输出到另一个页面上
- 为什么它不一次输出所有数组元素
- 如何在数组中输出所需的元素
- 如何在 javascript for 循环中从数组输出元素
- 循环遍历数组并成对输出(每个第二个元素的分隔符)
- 当元素消失时,不会触发鼠标输出
- 如何将 html 元素添加到当前文本区域值,并将其输出为原始 html
- 单击元素>JavaScript输出文档.activeElement VS.事件目标
- Mongo DB,Node Express,从MongoDB返回的输出中提取一个元素
- 如何修复将鼠标悬停在子元素上时调用的鼠标输出
- 将 jQuery Mobile CSS 合并到 JavaScript 输出元素中
- HTML-输出文本的元素
- jsoup多元素输出
- 将可点击的树元素输出到iframe或区域:以jeasyui为中心