可能是一个简单的解决方案,但我没有让它发挥作用。我有一个具有唯一id
属性的表。通过按钮,我可以更改表格行的顺序。当我点击一个按钮,我想收到当前的订单。除了第一个值undefined
之外,这适用于下面的代码。我怎样才能摆脱那个未定义的价值?
$("#saveOrder").click(function(e){
var event = e || window.event;
event.preventDefault();
var t = "";
$("#eventTable tr").each(function(){
t += $(this).attr("id");
});
alert(t);
});
我尝试了t += $(this).attr("id").replace("undefined","");
但是脚本不会alert()
任何
答案 0 :(得分:2)
尝试t += this.id || "";
这将用空字符串替换未定义的值。
请注意,您无法在replace
上使用undefined
,因为undefined
不是字符串。您可以通过x
或String(x)
将值x+''
转换为字符串表示形式。但是,在这种情况下,这不是必需的。
修改强>
正如Esailija所指出的,不需要在这里创建一个jQuery对象。
答案 1 :(得分:1)
尝试仅选择具有id的行,如下所示:
$("#eventTable tr[id]").each(function(){ ...
答案 2 :(得分:0)
听起来你有一行没有id
属性。你总是可以用旗子跳过它:
var t = "";
var first = true;
$("#eventTable tr").each(function(){
if (!first) {
t += $(this).attr("id");
} else {
first = false;
}
});