所以基本上我想追加一个<表>标记为<体>使用自定义ID然后在我的代码中引用带有自定义ID的表并附加< tr>,< td>,或<第>它。
以下是一个例子:
dataHold = data[1].split("@")[1]; //just imagine this as "yahoo.com"
if( !hold.includes( dataHold ) )
{
$("body").append
(
"<table id='"+dataHold+"'>"+
"<tr>"+
"<th>"+dataHold+"</th>"+
"</tr>"+
"</table>"
);
$( "#"+dataHold ).append
(
"<tr>"+
"<td>"+data[1]+"</td>"+
"<td>"+data[2]+"</td>"+
"<td>"+data[3]+"</td>"+
"</tr>"
);
}
它附加&lt;表&gt;标签,但由于某种原因&lt; TR&GT;标签附加不起作用,我无法弄清楚为什么。有什么想法吗?
答案 0 :(得分:0)
当您的代码与此代码段隔离时,您的代码工作正常:
var dataHold = "testId";
var data = ["foo", "bar", "carrots", "broccoli"];
$("body").append(
"<table id='" + dataHold + "'>" +
"<tr>" +
"<th>" + dataHold + "</th>" +
"</tr>" +
"</table>"
);
$("#" + dataHold).append(
"<tr>" +
"<td>" + data[1] + "</td>" +
"<td>" + data[2] + "</td>" +
"<td>" + data[3] + "</td>" +
"</tr>"
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
在使用jQuery选择器函数('$')之前,请确保已正确包含jQuery库。此外,在您喜欢的浏览器中使用内置调试器,以确保dataHold
和data
的值完全符合您的预期。如果它们是null
或undefined
,则可能会在字符串连接中出现错误,导致您的行未被追加。
答案 1 :(得分:0)
您的jQuery代码很好,所以问题在于您的变量或缺少jQuery的包含。确保您已加载jQuery,并且您的三个变量(hold
,data
和dataHold
)实际上已解决。不要忘记hold
不应该包含dataHold
来输入if
条件。
以下代码段显示此工作正常(所有变量设置正确):
const hold = data = [2, 3, 4, 5];
const dataHold = 1;
if (!hold.includes(dataHold)) {
$("body").append(
"<table id='" + dataHold + "'>" +
"<tr>" +
"<th>" + dataHold + "</th>" +
"</tr>" +
"</table>"
);
$("#" + dataHold).append(
"<tr>" +
"<td>" + data[1] + "</td>" +
"<td>" + data[2] + "</td>" +
"<td>" + data[3] + "</td>" +
"</tr>"
);
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;