您好我有很多行具有这种结构:
<div class="row">
<div class="input-group col-lg-1" >
<span class="input-group-addon">
<input type="checkbox">
</span>
<span id="value">
@Html.DisplayFor(modelitem => item.DeviceInstanceId)
</span>
</div>
*
*
*
</div>
其中@Html.DisplayFor(modelitem => item.DeviceInstanceId)
是一个数字。
我获得了与选中复选框相关联的跨度值。 使用此代码:
$(document).ready(function () {
$("#reservations").click(function () {
var Ids = new Array();
$(".table input:checked").each(function () {
Ids.push(($(this).parentsUntil("row").children("#value").text()));
})
console.log(Ids);
});
});
Ids看起来像这样:
["↵ 38↵ ", "↵ 40↵ ", "↵ 41↵ "]
我应该如何改进我的JS代码以摆脱那些进入和空白?
答案 0 :(得分:3)
你可以:
Ids.push($.trim($(this).parentsUntil("row").children("#value").text()));
删除前导和尾随空白字符,或
编写HTML,使其不包含换行符和空格:
<span id="value">@Html.DisplayFor(modelitem => item.DeviceInstanceId)</span>
答案 1 :(得分:0)
.children('#value')
只会向下看一级
.find('#value')
将看起来不止一个级别。
在你的情况下,id为“value”的范围实际上比“row”类
低两级