按数据属性循环元素并替换值
loop elements by data attribute and replace values
我正在尝试循环遍历包含特定数据属性的所有元素,然后替换/删除某些字符。
//replace chars put in by money mask since model is double
$("input[data-input-mask='money']").each(function() {
alert(this.value); // shows: $ 1,000
alert('test$ ,'.replace('$ ', '').replace(',', '')); //shows: test
this.value = this.value.replace('$ ', '').replace(',', '');
alert(this.value); //shows: $ 1,000
});
this.value仍然是原始值。我在这里可能做错了什么?
使用.localeString()
更新
重读OP之后,我意识到想要的恰恰相反。这仍然很容易。使用localString()
而不是使用遮罩。那么,在处理值时就不使用localestring()
了。
摘录
$("input[data-input-mask='money']").each(function() {
var cash = parseFloat(this.value);
var green = cash.toLocaleString('en-EN', { style: 'currency', currency: 'USD' });
alert(green);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input data-input-mask='money' value="623.23">
<input data-input-mask='money' value="20199">
<input data-input-mask='money' value="">
您可以循环遍历每个元素并像这样替换它。
<script>
$(document).ready(function(e) {
//Retrieve all text of amount di;
$.each( $('.amount'), function(){
var unique_id = $(this).text();
//check if any price is match to FREE THEN replace it with NOT FREE
if(unique_id=='FREE'){
$(this).text("NOT FREE");
}
});
});
</script>
相关文章:
- jQuery appendTo 替换元素而不是添加元素,如果正在添加的元素预先存在于列表中
- 如何用一些已编译的HTML替换元素的值
- 如何替换元素属性中的部分文本
- 替换
元素中的特殊字符的问题
- 为什么这个脚本只工作一次?只替换元素一次,然后再也不替换
- JS如何在加载页面之前替换元素(awesomium c#)
- Javascript.替换元素“<termref/>"用规则的“;文本”;
- 替换元素中字符串的所有位置
- regex替换元素文本
- 在Javascript中,如何用变量替换元素的名称
- 如何实现 Angular 指令来替换元素,但仅限于某些情况
- 事件调用在 ajax 替换元素后多次
- 替换元素后,无法单击该元素
- jQuery查找并替换元素中的关键字
- 如何在 JavaScript 中用 DOM 操作函数替换元素内容
- .each(从html元素生成下拉列表,替换元素)
- 替换元素中的类名,但不删除此元素中的其他类纯javascript
- Javascript push()替换元素,而不是追加
- 如何替换元素标记,然后将其添加到现有元素
- 查找并替换元素's类使用jQuery