我有这个HTML:
<td>
<div class="status">10</div>
<span class="fa fa-times-circle"></span>
</td>
我在下面的脚本中覆盖了&#39;状态&#39;如果其文本为&lt; 30则为1,如果> 30则为0。在上面的例子中,类状态是10,所以我需要它覆盖并指示1.我所拥有的脚本不会这样做。有人可以帮忙吗?
$.each($('tr .status'), function(i, v) {
var $this = $(this).text();
if($this > 0) {
($this < 30) ? $(this).text('1') : $(this).text('0');
}
});
答案 0 :(得分:0)
$.each($('.status'), function(i, v) {
var $this =parseInt( $(this).text());
if ($this > 0) {
($this < 30) ? $(this).text('1'): $(this).text('0');
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="status">10</div>
<span class="fa fa-times-circle"></span>
&#13;
答案 1 :(得分:0)
您正在将文字与数字进行比较,这会产生一些时髦的输出。尝试执行以下操作:
Vue.component('greeting', {
template: '<h1>Basic Component</h1>'
});
var vm = new Vue({
el: '#application'
});
通过这种方式,您可以将值强制为数字。
答案 2 :(得分:0)
在您的代码中,您使用tr .status
但在HTML中使用的是DIV,因此它应该是div.status
,您也应该使用parseInt()
,因为$(this).text()
会给你一个字符串,而不是一个整数。
答案 3 :(得分:-1)
看看这段JavaScript:
$('td .status')
此级联不适合您的HTML代码。 将级联更改为
<div ng-repeat="Name in Names">
<input type="checkbox" ng-change="checkchange($index)"
ng-model="Name.MaterialStream" />
</div>
或将td-tag更改为HTML中的tr-tag。